如题,由于我们的项目比较古老,一直都没有进行更新,因此还在使用php 5.1.6,
以前是通过手动安装的方式,将php_json扩展安装上的,也没有发现什么异常的问题,
这两天在做一个小机能开发的时候,发现了下面的问题:
$tmpArray = array(
'a' => '1.23',
'b' => 1.23
);
$tmpArray2 = json_encode($tmpArray);
print_r($tmpArray);
print_r("</br>");
print_r($tmpArray2);
结果为:
Array ( [a] => 1.23 [b] => 1.23 )
{"a":"1.23","b":%k}
很显然这种手动安装的json扩展,json_encode在解析数字的时候会产生异常,
因此不要使用json_encode解析int,要先转换成string再进行处理。
在此做个简单的记录,希望如果再有人遇到这个问题的时候,可以尽快的解决