電子書籍の厳選無料作品が豊富!

Windows XP SP3
Apache2.2.8
PHP5.2.6
---

mb_strlen()関数が使えません。
「Call to undefined function mb_strlen()」
というエラーが表示されます。

php.iniの設定の問題なのでしょうか?
[mbstring]の部分だけ貼り付けておきます。

[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_output = UTF-8
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none;
mbstring.func_overload = 7

A 回答 (2件)

php_mbstring.dllは入っていますか?


入っているのであれば、自分で記述すればよいと思いますよ~。
ちなみにXAMPPだと設定を行わなくてもつかえたと思うのですが…。

参考URL:http://www.apachefriends.org/jp/xampp-windows.html
    • good
    • 0
この回答へのお礼

C:\Program Files\PHP\
配下にはphp_mbstring.dllは入っていませんでした。

紹介いただいたXAMPPを導入したら問題解決しました。
ただ、文字コードの設定で多少てこずったので、報告させていただきます。

まず、文字コードの設定は下記のサイトを参考にしました。
http://centos.server-manual.com/apache.html

ところが設定が反映されず、文字化けを起こしてしまいました。
C:\xampp\php\php.ini
をいじっていたのですが反映されず
C:\xampp\php\php5.ini
というファイルがあったのでこちらかと思いましたがまた反映されませんでした。
XAMPP for Windowsのサイトのよくある質問の中に「質問6: どこから設定を変更できますか?」というのがあり、そこには
「PHP: .\xampp\apache\conf\php.ini」
とあるのですが、ここにはphp.iniはありません。ここへコピーすればいいのかと思ったのですが、やはり反映されませんでした。

ローカルのphpinfo()を見た所、「Loaded Configuration File 」が「C:\xampp\apache\bin\php.ini」とありました。このファイルを編集したところ、ようやく思い通りに動いてくれました。

苦労はしましたが解決できた事が嬉しかったです。

ご紹介いただきありがとうございました。

お礼日時:2008/09/18 19:47

php.ini内にある


「;extension=php_mbstring.dll」
と記述されている部分の「;」を削除して保存後、apacheを再起動すれば大丈夫だと思います。

この回答への補足

回答ありがとうございます。

php.ini内に
;extension=php_mbstring.dll
という行が無いのですが。

補足日時:2008/09/16 15:20
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報