xampp liteでPHPを使って文字コード変換をやろうとしたらエラーが出る。




Fatal error: Call to undefined function mb_convert_encoding() in C:\xampplite\htdocs\index.php on line 16



設定ファイルを確認する。
extension=php_mbstring.dll

これで問題なさそうだけど・・


phpinfo()関数を使って設定周りを見てみると




Configuration File (php.ini) Path no value
Loaded Configuration File (none)

という表示を発見。設定ファイルがロードされてないっぽい


mbstringの項目とか一切見当たらない



設定ファイルだと思っていたC:\xampplite\php\php.iniはダミーだったのか?
とりあえずこのphp.iniをC:\xampplite\apache\binの中へコピる
Apache再起動しました。
はい設定ファイルがロードされました!




Configuration File (php.ini) Path no value
Loaded Configuration File C:\xampplite\apache\bin\php.ini


mbstringの項目も無事表示されるようになりました。
ちなみにPHPに用意されている「mb系の関数」この「mb」とは、マルチバイト(MultiByteの頭文字)つまり漢字コード(2バイトコード・日本語文字)を扱うという意味ですね。