ZendFramework学习第二章(Json)

使用Zendframework中的Zend_Json组件可以实现PHP对象与JSON对象之间的转换。

json是一种轻量级的数据交换格式。

轻量级:

1.这种格式不需要特定的容器。

2.运行时占用很少资源。

 

Json的分隔符及意义:

分隔符          意义

   { }                  用于实现对象的包含,对象都包含在大括号内

     ,                   逗号用于分割对象的不同属性,或者数组的元素

    [ ]                  用于存放数组,数组将存放在中括号中

     :                   用于表示键/值对的值,冒号前为键,冒号后边就是该键的值

 

 

Json这一块呢没多少重点,无非就是三个方法:

将数组对象转化为Json格式-----------Zend_Json::encode();

将Json转化为普通数组-----------------Zend_Json::decode();

将Json转化为对象类型-----------------Zend_Json::decode($json,Zend_Json::TYPE_OBJECT);

 

下边给出一个我写出的例子,同样,大家注意编码问题,将文件保存为utf-8格式哦亲:

 

//将数据编码转化为json
     //require_once 'Zend/Json.php';
     $temp=array(
       "a" => 0,
       "b" => 1,
       "c" =>array(
         "c-1" => 21,
         "c-2" => 22,
         "c-3" => 23
         ),
       "d" => 3
       );
     
     $json=Zend_Json::encode($temp);
     echo "临时数组内容为:";
     echo "     ";
     print_r($temp);
     echo "

";
     echo "转换为json格式内容为:";
     
     print_r($json);
     echo "
输出将$json解码后的对象hah :";
     $vative1=Zend_Json::decode($json,Zend_Json::TYPE_OBJECT);
     print_r($vative1);
     
     
     //将json解码为普通数据
     $json1="{
      \"addressbook\":{
       \"name\":\"zhangsan\",
       \"adress\":{
        \"street\":\"长安街\",
        \"city\":\"北京\",
        \"zip\":100001
        }, 
        \"phoneNumbers\":[
        \"010-123456\",
        \"010-321654\"
        ]
       }
     }";
     echo "


解码前为:";
     print_r($json1);
     echo "

";
     $native=Zend_Json::decode($json1);
     echo "解码后为:";
     print_r($native);

你可能感兴趣的:(ZendFramework学习第二章(Json))