mb_internal_encoding()という関数は、php.iniのmbstring.internal_encodingを参照しているわけではないということを調査した備忘録。
一応サンプルスクリプトと結果を記載。
<?php ini_set("mbstring.internal_encoding", 'EUC-JP'); echo 'default : ' . mb_internal_encoding() . ' ' . ini_get("mbstring.internal_encoding" ) . '<br />' ; //default : EUC-JP EUC-JP mb_internal_encoding('UTF-8'); echo 'mb_internal_encoding : ' . mb_internal_encoding() . ' ' . ini_get("mbstring.internal_encoding" ) . '<br />' ; //mb_internal_encoding : UTF-8 EUC-JP ini_set("mbstring.internal_encoding", 'EUC-JP'); ini_set("mbstring.internal_encoding", 'UTF-8'); echo 'mbstring.internal_encoding : ' . mb_internal_encoding() . ' ' . ini_get("mbstring.internal_encoding" ) . '<br />' ; //mbstring.internal_encoding : UTF-8 UTF-8
ini_setで対応した方がよさげ。