• ベストアンサー

マルチバイト関数の呼び出し方

WindowsXP上でApache2.0.54とPHP5.0.4を使ってPHPのテストサーバを立てたのですが、マルチバイト関数をまったく読み込んでくれません。 PHPのコアファイルなどを "C:\Program Files\" 以下に "PHP 5.0.4" と言うフォルダをつくり、そこに保存してあります。Apacheの設定ファイルでPHPのモジュールをそのフォルダから呼び出して、うまくPHPが動作しました。また、PHP.ini上でextensionを "C:\Program Files\PHP 5.0.4\ext\" から読み出すようにしました。もちろん、extension一覧にあるphp_mbstrings.dllのコメントははずしてあります。 どのようにしたら、マルチバイト関数を呼び出せますか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • php504
  • ベストアンサー率42% (926/2160)
回答No.3

php.iniファイルが読み込まれていないのかもしれませんね php.iniはC:\WINDOWS\にコピーしてますか。 また<? phpinfo(); ?>で表示される情報で Configuration File (php.ini) Pathの値がC:\WINDOWS\php.iniとなっているか確認してみてください。

potch
質問者

お礼

2度のレスありがとうございました。 実は恥ずかしながら、php.iniをDLLと一緒にSystem32に入れてありました… php.iniを%windir%に移動させたら、ちゃんと読み込みました。(Configuration File Pathもちゃんと仰る通りになりました。) 本当にありがとうございました。

その他の回答 (2)

  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.2

php.iniの[mbstring]のところは適切にコード指定していますか? [mbstring] ; language for internal character representation. mbstring.language = Japanese 特にココかな、defaultだとmb_なんとかの関数群は使えません。 ;mbstring.func_overload = 0 あとはphpのマニュアルでご確認を http://www.php.net/manual/ja/ref.mbstring.php

potch
質問者

補足

レスありがとうございます。 コード指定などを見直したり、上にあるところなどを変えてみたのですがまだFatalErrorです。(どうも、ほんとにモジュールを読みこんないようです。) エラーコードは以下のとおりです。 Fatal error: Call to undefined function mb_ereg() in C:\Documents and Settings\xxxxxx\My Documents\HTML\php\mbmatch.php on line 8

  • php504
  • ベストアンサー率42% (926/2160)
回答No.1

php.iniを書き換えた後Apacheの再起動はされましたか。

potch
質問者

補足

レスありがとうございます。 Apacheの再起動、システムの再起動両方しましたがマルチバイト関数がまだ使えません。

関連するQ&A

専門家に質問してみよう