这里简单介绍一下Json格式
json是一种轻量化的数据格式,很适合网络间的数据传递。
说到底它就是键-值的存储思路,相信很多人都熟悉了。
和xml比起来,json的优势很明显:
除去一些格式符号,json不需要像xml那样加很多的重复的标签,需要传送的字节少了(在数据量一样的前提下)
缺点是可能不如项目了那么容易让人看懂,而且不好敲
json数据包含数组字面量和对象字面量,也可以混合数组对象字面量
1.数组字面量:
示例:
var json = ["hello", 1, true];
2.对象字面量:
var json = {
"key1":"value1",
"key2":"value2"
};
3.混合字面量:
json混合字面量示例格式
$jsonmenu = '{
"button":[
{
"name":"menu1",
"sub_button":[
{
"type":"click",
"name":"submenu1",
"key":"key1"
},
{
"type":"click",
"name":"submenu2",
"key":"key2"
},
{
"type":"click",
"name":"submenu3",
"key":"key3"
},
{
"type":"click",
"name":"submenu4",
"key":"key4"
},
{
"type":"view",
"name":"submenu5",
"url":"http://blog.youkuaiyun.com/joshuaxx316/article/details/44238319"
}]
},
{
"name":"menu2",
"sub_button":[
{
"type":"click",
"name":"submenu1",
"key":"key1"
},
{
"type":"click",
"name":"submenu2",
"key":"key2"
},
{
"type":"click",
"name":"submenu3",
"key":"key3"
}]
}]
}';
这是一个格式化的json数据,里面包含一类数据“button”,button不止一项,包含两项,根据json的语法,实际上,json数据可以包含单类也可以包含多类,多类之间的项结构可以不一样。同时每一个子项又可以包含多项。
利用PHP编码和解析json的例子:
$c = array(array(1,2,3));
//json_encode将数据编码成json格式,编码非关联数组时,可以用数组字面项也可以选择对象字面项
echo "<br>Non-associative array output as array: ", json_encode($c);
echo "<br>Non-associative array output as object: ", json_encode($c, JSON_FORCE_OBJECT);
$d = array('foo' => 'bar', 'baz' => 'long');
//json_encode将关联数组编码成json格式,可以用数组字面项自动选择对象字面项
echo "<br>Associative array always output as object: ", json_encode($d);
输出结果是:
Non-associative array output as array: [[1,2,3]]
Non-associative array output as object: {"0":{"0":1,"1":2,"2":3}}
Associative array always output as object: {"foo":"bar","baz":"long"}
以上是本人的一点理解,有不对的地方希望各位童鞋能及时批评指正...^~^
一个非常实用的json格式化网站,还可以提供视图分析,和一些免费的api,http://www.bejson.com/