php json_decode 后,数字对象转换成了 科学计数法 的解决方案

php json_decode 后,数字对象转换成了 科学计数法

今天在搞网页游戏在facebook积分上的对接,facebook传过来一个类json字符串,
想在callball.php页面当中应用这些参数,于是进行了一次json_decode操作,
发现长长的数字都变成了科学计数法,这不是我想要的结果。
做了各方面的转换处理都不好使,


 

$obj = ' {"order_id":213477815351175,"buyer":100001169269154} ' ;
$obj = $this -> json_decode( $obj , TRUE );
print_r($obj);

 

 结果:

 

Array
(
    [order_id] 
=>   2.1347781535118E+14
    [buyer] 
=>   1.0000116926915E+14
)

 

最后使用 php自带函数 number_format(),问题得到解决,效果如下:

 

$obj = ' {"order_id":213477815351175,"buyer":100001169269154} ' ;
    
$obj = $this -> json_decode( $obj , TRUE );
    
foreach  ( $obj   as   $key => $val ){
        
$obj [ $key ] = number_format ( $val , 0 , '' , '' );
    }
    print_r ( $obj );
    

 

结果:

 

Array
(
    [order_id] 
=>   213477815351175
    [buyer] 
=>   100001169269154
)

 

 

 

你可能感兴趣的:(decode)