【发布时间】:2018-08-29 01:37:28
【问题描述】:
好的,这听起来像是一个新手错误,但我发誓不是,我每天都使用 PHP,从来没有遇到过这个问题,但是当尝试转换一个完全有效的 JSON 文档时
[
{
"title" : "Introduction",
"location" : "/class/html/",
"des" : "An introduction to HTML!"
}
]
使用以下 PHP 代码
$json = file_get_contents("assets/pages/html/pages.json");
$decoded = json_decode($json,true);
var_dump($decoded);
什么也没发生,当我尝试运行它时出现 500 错误,然后当我进入 Windows Edge 调试器时它只是空白,我做错了什么吗?我已经在互联网上搜索了一整天,但没有任何效果
PHP V7.1
编辑:
我多次检查文件位置,它工作正常,即使直接输入字符串它仍然不起作用,当我检查error_log时,我得到以下错误
PHP Fatal error: Uncaught Error: Call to undefined function json_decode()
这是我的 PHP.INI
display_errors = On
max_execution_time = 30
max_input_time = 60
max_input_vars = 1000
memory_limit = 128M
post_max_size = 8M
session.gc_maxlifetime = 1440
session.save_path = "/var/cpanel/php/sessions/ea-php70"
upload_max_filesize = 32M
zlib.output_compression = Off
【问题讨论】:
-
这可能来自
file_get_contents,5XX 状态码是服务器错误。我的第一个猜测是该文件在该位置不存在,以确认使用文字来查看这个小提琴:3v4l.org/JJaED -
将 JSON 硬编码到 $json 变量中,然后使用
json_decode()函数是否有效?这将表明您的文件不在该路径中 -
确保关于相对路径.. 尝试使用整个路径.. 关于 500 错误,请尝试 error_all
-
如果收到 500 错误,请检查服务器上的 PHP 错误日志。