您的位置:首页 > 编程语言 > PHP开发

JS中json字符串和json对象之间的转换,PHP中json字符串和php数组之间的转换

2015-01-04 09:41 1021 查看
JS中:

json格式字符串转json对象(strJSON代表json字符串)

var obj = eval(strJSON);

var obj = strJSON.parseJSON();

var obj = JSON.parse(strJSON);

json对象转json格式字符串(obj代表json对象)

var str = obj.toJSONString();

var str = JSON.stringify(obj)

运用时候需要除了eval()以外,其他的都需要引入json.js包,切记!!!

PHP中:

1、json_encode():

1.1、将php数组转换为json字符串

1、索引数组

输出

2、关联数组:

输出变为

1.2、将php类转换为json字符串

现在,对这个类的实例进行json转换:

输出结果是

2、json_decode():
将json文本转换为相应的PHP数据结构


2.1、通常情况下,json_decode()总是返回一个PHP对象,而不是数组
比如:

结果就是生成一个PHP对象:

2.2、如果想要强制生成PHP关联数组,json_decode()需要加一个参数true:

结果就生成了一个关联数组:

3、json_decode()的常见错误

下面三种json写法都是错的

对这三个字符串执行json_decode()都将返回null,并且报错。

第一个的错误是,json的分隔符(delimiter)只允许使用双引号,不能使用单引号。

第二个的错误是,json名值对的"名"(冒号左边的部分),任何情况下都必须使用双引号。

第三个的错误是,最后一个值之后不能添加逗号(trailing comma)。

另外,json只能用来表示对象(object)和数组(array),如果对一个字符串或数值使用json_decode(),将会返回null。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: