找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1367|回复: 0
打印 上一主题 下一主题

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

[复制链接]

2500

主题

2513

帖子

7520

积分

论坛元老

Rank: 8Rank: 8

积分
7520
跳转到指定楼层
楼主
发表于 2018-2-14 08:11:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            1.当array是一个从0开始的连续数组时,json_encode出来的结果是一个由[]括起来的字符串
而当array是不从0开始或者不连续的数组时,json_encode出来的结果是一个由{}括起来的key-value模式的字符串
[U]复制代码[/U] 代码如下:
$test = array();
$test[] = 1;
$test[] = 1;
$test[] = 1;
echo json_encode($test);
结果:
[1,1,1]
[U]复制代码[/U] 代码如下:
$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中json_encode中文编码问题分析
  • php中json_decode()和json_encode()的使用方法
  • PHP5.4中json_encode中文转码的变化小结
  • php数组转换js数组操作及json_encode的用法详解
  • 浅析php中json_encode()和json_decode()
  • php中json_encode UTF-8中文乱码的更好解决方法
  • PHP使用json_encode函数时不转义中文的解决方法
  • PHP中让json_encode不自动转义斜杠“/”的方法
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端