奇怪的PHP json_encode错误:json_encode()最多需要2个参数,给定3个

时间:2017-01-19 07:53:35

标签: php json

此代码:

$arr = array(
    'a' => 1,
    'b' => array(
        'c' => 'Hello',
        'd' => [1, 10, 100, 1001]
    ),
);

echo json_encode($arr, JSON_PRETTY_PRINT, 2);

生成此错误:

  

json_encode()最多需要2个参数,3个给定

但是我上次检查时,json_encode确实接受了第三个参数。

我想用更少的深度扩展JSON字符串。这不是第三个解决方案吗?但是为什么它会在PHP文档说它接受3时出现这个错误?

仅供参考我使用PHP 5.4进行WAMP。

1 个答案:

答案 0 :(得分:1)

从您链接的页面:

  

添加了5.5.0深度参数。

由于您使用的是PHP 5.4,因此您的PHP版本太旧而无法支持第三个参数。 PHP 5.4也过了end of life

升级到受支持的PHP版本。优选地,7.x分支作为无5.x分支的状态优于“仅仅安全修复”。