php json_encode值中大括号与花括号区别

yipeiwu_com6年前PHP代码库

1.当array是一个从0开始的连续数组时,json_encode出来的结果是一个由[]括起来的字符串

而当array是不从0开始或者不连续的数组时,json_encode出来的结果是一个由{}括起来的key-value模式的字符串

复制代码 代码如下:

$test = array();
$test[] = 1;
$test[] = 1;
$test[] = 1;
echo json_encode($test);

结果:

[1,1,1]

复制代码 代码如下:

$test = array();
$test[] = 1;
$test[] = 1;
$test[] = 1;
unset($test[0]);
echo json_encode($test);

结果:

{"1":1,"2":1}

2.当字符串为[1,1,1] 这种模式时,json_decode默认解析出来的结果是一个数组,

当字符串为{"1":1,"2":1} 这种模式时,json_decode默认解析出来的结果是一个对象,此时可以设置它的第二个参数为true强制让它返回数组

3.由于php无法区分一维数组和二维数组,才会出现以上情况,因为使用json编码时推荐将第二个参数设置为true

相关文章

使用php判断浏览器的类型和语言的函数代码

我们经常看到有一些网站上面会显示出你目前使用的浏览器类型和使用的语言,比如显示的是:您使用的浏览器为 IE6,繁体字。看起来是不是很炫。 其实这样的功能不难实现,无非就是判断浏览器的类型...

php常用日期时间函数实例小结

本文实例讲述了php常用日期时间函数。分享给大家供大家参考,具体如下: 时间戳 时间戳我就不赘述了,手册里有,就是能精确的表示一个时间点。我在做项目的时候经常用时间戳来表示数据,这样比较...

php cli 方式 在crotab中运行解决

复制代码 代码如下: /var/www/html/bt/e/BtSys:.:/usr/share/pear:/usr/share/phpPHP Warning: require(../c...

PHP序列化操作方法分析

本文实例讲述了PHP序列化操作方法。分享给大家供大家参考,具体如下: 序列化就是将变量数据转换为字符串(跟类型转换机制不同),一般应用于存储数据(文件),然后在别的情形下恢复(反序列化)...

php利用反射实现插件机制的方法

本文实例讲述了php利用反射实现插件机制的方法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:<?php /**  * @name &n...