json格式化

这里简单介绍一下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/

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值