JSON兩種結構之物件與陣列的理解_php實例

WBOY
發布: 2016-08-04 08:56:55
原創
1013 人瀏覽過

JSON簡介

JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式。它是基於ECMAScript的一個子集。 JSON採用完全獨立於語言的文字格式,但也使用了類似C語言家族的習慣(包括C、C++、C#、Java、JavaScript、Perl、Python等)。這些特性使JSON成為理想的資料交換語言。 易於人閱讀和編寫,同時也易於機器解析和生成(一般用於提升網路傳輸速率)。

Json是一種異常簡單易懂的資料格式,關於json的規定,僅如下而已:

1) 並列的資料之間以逗號(", ")分隔。

2) 映射以冒號(": ​​")表示。

3) 並列資料的集合(陣列)以方括號("[]")表示。

4) 映射的集合(物件)以大括號("{}")表示。

JSON有兩種結構數組和物件:數組表示有序資料的集合,而物件表示無序資料的集合。

看下面範例:

$arr = array(111,'aaa','bbb');
$arr1 = array(
'a' => 'aaa',
'b' => 222
);
$arr2 = array(
'a' => 'aaa',
'other' => array(
'bbb',1111
)
);
echo json_encode($arr); //[111,"aaa","bbb"]
echo json_encode($arr1); //{"a":"aaa","b":222}
echo json_encode($arr2); //{"a":"aaa","other":["bbb",1111]}
登入後複製

從上看出:由於javascript不支援關聯數組,所以json_encode()只將索引數組(indexed array)轉為數組格式,而將關聯數組(associative array)轉為物件格式。

關於PHP對json支持說明:

json_encode只支援UTF-8編碼的資料;

json_decode永遠只反映一個PHP對象,帶上第二個參數true可返回數組:

$json = '{"a":"aaa","other":["bbb",1111]}';
print_r(json_decode($json));
print_r(json_decode($json, true)); 
登入後複製

以上所述是小編給大家介紹的JSON兩種結構之對象和數組的理解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對腳本之家網站的支持!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!