首頁 >後端開發 >php教程 >關於Zend Framework處理Json資料的方法

關於Zend Framework處理Json資料的方法

不言
不言原創
2018-06-15 14:29:121245瀏覽

這篇文章主要介紹了Zend Framework處理Json資料方法,結合實例形式分析了zend framework針對json相關操作類別的使用方法,需要的朋友可以參考下

本文實例講述了Zend Framework處理Json資料的方法。分享給大家供大家參考,如下:

JSON分隔符號及意義

{}    用來實現物件的包含,物件都包含在大括號中
,    逗號用於分隔物件的不同屬性,或陣列的元素
[]    用來存放數組,陣列會存放在中括號中
:    用來表示鍵/值對的值,冒號前為鍵,冒號後為該鍵的值

JSON範例

#
{
  "addressbook":{
    "name":"Mary Lebow",
    "address":{
      "street":"5 Main Street",
      "city":"San Diego,CA",
      "zip":91912
    },
    "phoneNumbers":[
      "619 332-3452",
      "664 223-4667"
    ]
  }
}

使用JSON

#語法:$json = Zend_Json::encode($phpNative);
說明:其中,參數$phpNative為PHP常見的資料類型,可以是陣列、物件或其他類型的資料。
函數傳回值$json為符合JSON格式的一個字串。

範例:

<?php
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 "<pre class="brush:php;toolbar:false">";
print_r($temp);
echo "
"; echo "转换为JSON格式内容为:"; echo "
";
print_r($json);
echo "
";

結果為:

临时数组内容为:

Array
(
  [a] => 0
  [b] => 1
  [c] => Array
    (
      [c-1] => 21
      [c-2] => 22
      [c-3] => 23
    )
  [d] => 3
)

转换为JSON格式内容为:

{"a":0,"b":1,"c":{"c-1":21,"c-2":22,"c-3":23},"d":3}

將JSON解碼為普通資料

語法:$phpNative = Zend_Json::decode($json);

#範例:

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

輸出結果為:

解码前为:
{
  "addressbook":{
    "name":"zhangsan",
    "address":{
      "street":"Chang an jie",
      "city":"BeiJing",
      "zip":100001
    },
    "phoneNumbers":[
      "010-12345678",
      "010-11111111"
    ]
  }
}
解码后为:
Array
(
  [addressbook] => Array
    (
      [name] => zhangsan
      [address] => Array
        (
          [street] => Chang an jie
          [city] => BeiJing
          [zip] => 100001
        )
      [phoneNumbers] => Array
        (
          [0] => 010-12345678
          [1] => 010-11111111
        )
    )
)

說明:

在使用此方法對JSON內容進行解碼時,可以解碼為數組,也可以解碼為物件。

具體有Zend_Json::decode()方法的第二個參數決定。

語法格式如下

phpNative=ZendJson::decode(phpNative=ZendJson::decode(json,Zend_Json::TYPE_OBJECT);

#上個例子解碼為物件後的結果為

解码后为:

stdClass Object
(
  [addressbook] => stdClass Object
    (
      [name] => zhangsan
      [address] => stdClass Object
        (
          [street] => Chang an jie
          [city] => BeiJing
          [zip] => 100001
        )
      [phoneNumbers] => Array
        (
          [0] => 010-12345678
          [1] => 010-11111111
        )
    )
)

#小結:

Json的使用還是比較簡單的,在介面應用上需要Json。它可以在不同的語言中共用。可以靈活的傳遞資料。作用與XML類似,但是比XML要節省頻寬。

以上就是本文的全部內容,希望對大家的學習有幫助,更多相關內容請關注PHP中文網!

相關推薦:

#關於Zend Framework中Loader及PluginLoader的用法解析

#關於Zend Framework上傳檔案重新命名的實作方法

#

以上是關於Zend Framework處理Json資料的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn