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

Posted ia22y

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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)强制转换一下。


 

以上是关于PHP中json_encode()使用须知,JSON数组和JSON对象的主要内容,如果未能解决你的问题,请参考以下文章

php json_encode中文unicode转码问题

php json_encode utf8 char问题(mysql)[重复]

如何在 PHP:json_encode 中使用 UTF-8

PHP json_encode( ) 函数介绍

如何正确运用PHP json_encode函数进行中文转换

PHP 和 AJAX:如何在 PHP while 循环中显示 json_encode 数据?