站長資訊網
最全最豐富的資訊網站

一起分析PHP怎么解析JSON數據

本篇文章給大家帶來了關于PHP的相關知識,其中主要介紹了PHP中應該怎么解析JSON數據,JSON是一種標準的輕量級數據交換格式,它可以快速、容易地解析和生成,下面一起來看一下,希望對大家有幫助。

一起分析PHP怎么解析JSON數據

推薦學習:《PHP視頻教程》

什么是JSON?

JSON是一種標準的輕量級數據交換格式,它可以快速、容易地解析和生成。

與XML一樣,JSON是一種基于文本的格式,易于編寫且易于理解,但與XML不同,JSON數據結構占用的帶寬少于XML版本。JSON基于兩個基本結構:

對象:被定義為鍵/值對的集合(即key:value),每個對象以左大括號“{”開頭,以右大括號“}”結束,多個鍵/值對之間由逗號“,”分隔。

數組:被定義為有序的值列表,數組以左括號“[”開頭,以右括號“]”結束,值以逗號“,”分隔。

在JSON,鍵總是字符串,而值可以是string, number,true或者false,null甚至是object或者array。字符串必須用雙引號括起來,并且可以包含轉義字符,如n,t和。JSON對象可能如下所示:

{     "book": {         "name": "PHP 從入門到精通",         "author": "明日科技",         "year": 2017,         "type": "php編程",         "bestseller": true      } }

而JSON數組的示例如下所示:

{     "fruits": [         "Apple",         "Banana",         "Strawberry",         "Mango"     ] }

在PHP中編碼JSON數據

在PHP中,json_encode()函數用于將值編碼為JSON格式。被編碼的值可以是除資源之外的任何PHP數據類型,如數據庫或文件句柄。下面的示例演示如何將PHP關聯數組編碼為JSON對象:

  // 關聯數組   $marks = array("Peter"=>65, "Harry"=>80, "John"=>78, "Clark"=>90);   echo json_encode($marks);

同樣,你可以將PHP索引數組編碼為JSON數組,例:

  // 索引數組   $colors = array("紅", "綠", "藍", "橙", "黃");   echo json_encode($colors);

你還可以使用JSON_FORCE_OBJECT選項強制json_encode()函數將PHP索引數組作為JSON對象返回,如下例所示:

  // 索引數組   $colors = array("紅", "綠", "藍", "橙");   echo json_encode($colors, JSON_FORCE_OBJECT);

用PHP解碼JSON數據

解碼JSON數據就像編碼它一樣簡單。你可以使用PHP json_decode()函數將JSON編碼的字符串轉換為適當的PHP數據類型。

現在讓我們看一個示例,它將向你展示如何解碼JSON數據并訪問PHP中JSON對象或數組的各個元素。

<?php    // 將JSON編碼的字符串分配給PHP變量 $json = '{"Peter":65,"Harry":80,"John":78,"Clark":90}';    // 將JSON數據解碼為PHP關聯數組 $arr = json_decode($json, true); // Access values from the associative array echo $arr["Peter"];  // Output: 65 echo $arr["Harry"];  // Output: 80 echo $arr["John"];   // Output: 78 echo $arr["Clark"];  // Output: 90    // 將JSON數據解碼為PHP對象 $obj = json_decode($json);  // 返回對象的訪問值 echo $obj->Peter;   // Output: 65 echo $obj->Harry;   // Output: 80 echo $obj->John;    // Output: 78 echo $obj->Clark;   // Output: 90  ?>

還可以使用foreach()循環遍歷解碼數據,如下所示:

<?php  // 將JSON編碼的字符串分配給PHP變量 $json = '{"Peter":65,"Harry":80,"John":78,"Clark":90}';    // 將JSON數據解碼為PHP關聯數組 $arr = json_decode($json, true);    // 通過關聯數組循環 foreach($arr as $key=>$value){     echo $key . "=>" . $value . ""; } echo "";  // 將JSON數據解碼為PHP對象 $obj = json_decode($json);    // 通過對象循環 foreach($obj as $key=>$value){     echo $key . "=>" . $value . ""; }  ?>

推薦學習:《PHP視頻教程》

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品国产一区二区| 无码国内精品久久人妻麻豆按摩 | 亚洲精品色婷婷在线影院| 亚洲精品你懂的在线观看| 91亚洲国产成人精品下载| 国产精品林美惠子在线播放| 7777久久久国产精品消防器材| 久久无码av亚洲精品色午夜| 日韩三级一区二区三区| 国产亚州精品女人久久久久久| 老司机67194精品线观看| 亚洲国产小视频精品久久久三级| 老司机福利精品视频| 久久91综合国产91久久精品| 久久精品国产99国产精品导航| 精品久久久久不卡无毒| 精品久久久久久无码人妻热| 亚洲av永久无码精品古装片| 亚洲日韩精品A∨片无码加勒比| 精品露脸国产偷人在视频7| 色妞www精品视频免费看| 久热这里只精品99re8久| 精品无码av一区二区三区| 亚洲日韩AV一区二区三区中文 | 久久久久久噜噜精品免费直播| 2020精品极品国产色在线观看| 国内精品卡1卡2卡区别| 日韩精品无码Av一区二区| 久久精品视频大全| 牛牛在线精品免费视频观看| 久久久久亚洲精品日久生情| 成人精品在线视频| 精品少妇人妻AV一区二区| 国产综合精品女在线观看| 日韩精品久久无码中文字幕| 精品亚洲成A人在线观看青青| 国产精品91av| 青青草原综合久久大伊人精品| 久久精品无码中文字幕| 国内精品视频九九九九| 日韩精品成人a在线观看|