PHP中json_encode()使用须知,JSON数组和JSON对象
⊰ 偷偷的告诉你,这是一个很不谨慎就会踩得坑 ⊱
如下代码 (看了一下很简单,没毛病啊,老铁)
$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)强制转换一下。