• 締切済み

phpにてjsonの利用ができなくなりました

phpにてjsonの利用ができなくなりました yum phpインストール後 peclにてjsonをインストールし動いておりました。 ある時点よりPHPのjsonのエラーが出るようになり、プログラムが動かなくなりました。 解決方法わかる方いらっしゃいましたら、ご教授お願い致します。 エラー: PHP Fatal error: Call to undefined function json_encode() やってみたこと:  yum php やphp-devel、pecl でjsonを入れなおしたり、  php.ini php.d/json.ini を記述してみたり、  jsonのtar.gzを落としてコンパイルしておいてみたり  としたのですが、動きません. その他状況: ・php -m にてjsonが表示されますが ・phpinfo()ではjsonの項目が表示されません 怪しい点: 利用できなくなった前後で yum update で全てのアップデートを行っています。 よろしくお願いいたします。

みんなの回答

回答No.2

phpinfo()で表示される情報の、最初のほうの表の中に「Loaded Configuration File」という項目があると思いますが、これが現在実行しているPHPが参照しているphp.iniファイルになるのですが、 そのphp.ini内で、extensionを読むように記述されていますか? また、記述があるということだったら、今度はCentOSだと違うかもしれませんが、 /var/log あたりに保存されるApacheのエラーログとかを見てみて、なんか文句言われていないか確認してみてはいかがでしょう。

qpworuei
質問者

お礼

ご回答ありがとうございました。 遅くなりましたが、 php.iniにextension記述はありました。 またエラーログには特に出力はなく・・。 その他お気づきになられた点あればお願い致します!

  • samdeco
  • ベストアンサー率30% (6/20)
回答No.1

jsonではなくmysqlで同じような現象に悩んだことがあって その経験から言いますので外れてるかもですが、 パスが通っているディレクトリにphp.iniが2つ存在していませんかね? たとえば /etc配下と/usr配下にそれぞれあるとか。 #updatedb #locate php.ini とかで確認してみてください。

qpworuei
質問者

お礼

回答ありがとうございます! #updatedb #locate php.ini やってみたのですが、/etc の下に一つだけでした。 その他にも何か施せる術があればご教授お願いします。 CentOSなのですが、最悪、php5.2へアップデートを試みてみようかと考え中です。

関連するQ&A