首页 > 代码库 > PHP中json_encode()使用须知,JSON数组和JSON对象

PHP中json_encode()使用须知,JSON数组和JSON对象

<style>body { font: 12px/1.5 Tahoma, Arial, Helvetica, sans-serif }</style>

? 偷偷的告诉你,这是一个很不谨慎就会踩得坑 ? 

如下代码 (看了一下很简单,没毛病啊,老铁)

$arr = array(
    ‘0‘=>‘a‘,‘1‘=>‘b‘,‘2‘=>‘c‘,‘3‘=>‘d‘
);
echo json_encode($arr);

但是结果是

["a","b","c","d"]

需求是要返回JSON对象,是这样似的

{"0":"a","1":"b","2":"c","3":"d"}

You can do it,you nee add

$arr = array(
    ‘0‘=>‘a‘,‘1‘=>‘b‘,‘2‘=>‘c‘,‘3‘=>‘d‘
);
echo json_encode((object)$arr);

输出结果

{"0":"a","1":"b","2":"c","3":"d"}

bingo,搞定

技术分享


 

总结:PHP数组=>json数组/对象,但是PHP对象=>json对象,so如果负责接口一类的开发的话,建议json_encode()之前可以先(object)强制转换一下。


 

PHP中json_encode()使用须知,JSON数组和JSON对象