2016-11-21 50 views
1

我在ubuntu 12.04上使用php 5.6.8,尝试json_encode($arr, JSON_PRESERVE_ZERO_FRACTION),但是JSON_PRESERVE_ZERO_FRACTION未定义。我想也许它是在php-json 1.3.7+中推出的,所以我试图sudo apt-get install --only-upgrade php5-json,它告诉我我有php-json的最新版本。在php 5.6.8中缺少JSON_PRESERVE_ZERO_FRACTION

我使用的是Ondřej Surý PPA作为源代码。任何人有一个想法是什么问题?

编辑

我也检查了PHP没有任何应用程序(php -a),这个常数仍然是不确定的。所以我不认为它与应用程序有关。

+0

你是一个命名空间内? –

+0

是的,但我不认为它相关,我也检查过纯PHP的交互模式,常数仍然丢失。 – jvrnt

+2

可能是您使用的PPA的问题。建议您使用https://deb.sury.org/#bug-reporting向该人询问。 – CBroe

回答

2

应在PHP 5.6.6+中可用。

在某些情况下,你的工具抱怨缺少的常量,您可以添加填充工具:

if(!defined('JSON_PRESERVE_ZERO_FRACTION')) 
{ 
    define('JSON_PRESERVE_ZERO_FRACTION', 1024); 
}