JSON简介
JSON的全称是”JavaScript Object Notation”,意思是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式。XML也是一种数据交换格式,为什么没有选择XML呢?因为XML虽然可以作为跨平台的数据交换格式,但是在JS(JavaScript的简写)中处理XML非常不方便,同时XML标记比数据多,增加了交换产生的流量,而JSON没有附加的任何标记,在JS中可作为对象处理,所以我们更倾向于选择JSON来交换数据。
JSON的语法规则
SON 语法是 JavaScript 对象表示法语法的子集。
数据在名称/值对中
数据由逗号分隔
花括号保存对象
方括号保存数组
JSON的表现形式
JSON数组
JSON 数组在方括号中书写:
数组可包含多个对象:
{"employees":[{"firstName":"John","lastName":"Doe"},{"firstName":"Anna","lastName":"Smith"},{"firstName":"Peter","lastName":"Jones"}]}
JSON对象
JSON的另一种表现形式是对象
{ "firstName":"John" , "lastName":"Doe" }
JSON的使用方法
JSON 在JAVA SCRIPT 中的使用
JSON在JAVA SCRIPT中的使用很频繁,当后台传递数据给前台时,通常是以JSON的格式传递的,但是前台获得的JSON数据无法直接使用,需要经过处理。
var txt = '{ "employees" : [' +
'{ "firstName":"Bill" , "lastName":"Gates" },' +
'{ "firstName":"George" , "lastName":"Bush" },' +
'{ "firstName":"Thomas" , "lastName":"Carter" } ]}';
假设这是前台获取到的数据,现在需要使用它是先要经过Java Script中的eval()函数的处理
varobj=eval("("+txt+")");obj.employees[1].firstName='Bill';obj.employees[1].lastName='Gates';
这是对象类型的JSON数据在JAVA SCRIPT中的使用。数组类型的数据同理可以一样经过处理使用。
JSON在PHP中的使用
我们也会经常遇到前台传递数据给后台,传递过来的数据也不能直接使用需要经过json_decode()函数进行处理,如果传递过来的是JSON 对象类型的数据,可以加上第二个参数为true,意为经过将JSON对象转化成数组。便于后台的使用。同理,如果后台想要传递数据给前台,需要对数据用json_encode()函数进行转化。
结果会输出
object(stdClass)#1(5){["a"]=>int(1)["b"]=>int(2)["c"]=>int(3)["d"]=>int(4)["e"]=>int(5)}array(5){["a"]=>int(1)["b"]=>int(2)["c"]=>int(3)["d"]=>int(4)["e"]=>int(5)}
json_encode()
<?php $arr=array('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);echojson_encode($arr);?>
以上结果会输出
{"a":1,"b":2,"c":3,"d":4,"e":5}
总结
以上就是JSON的基本用法,JSON在我们的web开发中经常使用,掌握它是必要的