json似乎启用,但无法运行json_encode

我的PHP版本是5.1.6,请按照以下说明安装Json:

# yum install php-devel

# yum install php-pear

# yum install gcc

# pear install json

# cd /etc/php.d

# echo "extension=json.so" > json.ini

# service httpd restart

现在,我检查是否启用了Json,但无法运行json_encode

检查1:

[root@69-64-69-43 ~]# php -i | grep json

结果1:

/etc/php.d/json.ini,

json

json support => enabled

json version => 1.2.1

检查2:

[root@69-64-69-43 ~]# php -r 'var_dump(function_exists("json_encode"));'

结果2:

bool(true)

但是运行时:

Fatal error: Call to undefined function json_encode() in /var/www/vhosts/ykite.com/httpdocs/fre/json.php on line 8

这是运行链接:

检查Json:http :

//69.64.69.43/fre/json.php

php_info():http://69.64.69.43/fre/info.php

我当时确实在看并阅读了许多文档,但找不到这种情况的起因。

衷心感谢您的帮助。

ong

回答:

如果var_dump( function_exists( 'json_encode' )

)返回true,则在HTTP请求中说该功能不存在。我只想到一种解释:CLI和HTTP请求使用不同的php.ini。在您的phpinfo(

)文档中,它说它正在加载json.ini,但是我在那里看不到任何其他对JSON的引用。

检查您的日志,以查看是否在HTTP请求中实际加载了json.so。我敢打赌,事实并非如此。

以上是 json似乎启用,但无法运行json_encode 的全部内容, 来源链接: utcz.com/qa/402190.html

回到顶部