2010-07-02 51 views
0

好吧我正在運行CentOS,PHP 5.2。我最近添加了JSON擴展。當安裝JSON運行後PHP JSON。令人困惑的問題

php -i 

...,它說

json 

json support => enabled 
json version => 1.2.1 

但是當我運行的phpinfo它沒有顯示的JSON擴展爲被啓用。我已經將擴展名添加到php.ini文件中,以便加載json.so文件。

我對此很困惑。這可能的原因是什麼?

btw。我正在運行PHP作爲一個Apache模塊。

回答

3

也許你的PHP cli使用不同的php.ini文件,一個加載json擴展,而Apache模塊不是。 php -iphpinfo()給出有關加載的php.ini文件的信息。

對於PHP cli,可以通過PHPRC環境變量或php -c <file|dir>指定php.ini位置。對於Apache模塊,您可以使用Apache指令PHPINIDir

1

從PHP 5.2開始,核心中包含JSON擴展,您不需要包含任何擴展。如果它說JSON支持已啓用它應該工作。你真的嘗試過了嗎?

只要php不是用--disable-json編譯的。

+0

你會在發行頻率從核心刪除擴展驚訝。此外,即使它在覈心,它應該顯示在'phpinfo'中。它也可以用'--enable-json = shared'編譯。 – Artefacto 2010-07-02 02:04:54

1

解決了它們。我添加了一個更新後的版本庫,然後運行 yum update php 我犯了一個錯誤的錯誤,假設我正在使用5.2當它實際上是5.1

更新後它工作。