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

yipeiwu_com7年前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

相关文章

利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法

准备工作: ① 首先要会使用ThinkPHP这个框架 ② 最好有些ajax的基础(可以去看下小飞的另外一篇博文:Ajax实时验证"用户名/邮箱等"是否已经存在) ③ 4个js文档(点此免...

ajax php 实现写入数据库

首先需要一个带输入表格. 复制代码 代码如下:<!-- To change this template, choose Tools | Templates and open the...

浅析PHP substr,mb_substr以及mb_strcut的区别和用法

PHP substr()函数可以 分割文字,但要分割的文字如果包括中文字符往往会遇到问题,这时可以用mb_substr()/mb_strcut这个函数,mb_substr() /mb_s...

php堆排序实现原理与应用方法

本文实例讲述了php堆排序实现原理与应用方法。分享给大家供大家参考。具体分析如下: 这里以php作为描述语言较详细讲解堆排序原理,因保证程序可读性,故不做优化,php程序中关于堆的一些概...

php获取当前网址url并替换参数或网址的方法

一是PHP获取当前页面的网址: 复制代码 代码如下: //获得当前的脚本网址 function GetCurUrl() { if(!empty($_SERVER["REQUEST_URI...