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

php json字符串如何轉數組

php json字符串轉數組的方法:首先用“json_decode”函數對JSON格式的字符串進行編碼;然后通過“var_dump($students);”方式打印“$students”即可。

php json字符串如何轉數組

推薦:《PHP視頻教程》

php json字符串轉為數組或對象

從網上查到的方法是 用get_object_vars 把類類型轉換成數組 然后在用foreach 遍歷即可

$array = get_object_vars($test); $json= '[{"id":"1","name":"u5f20u96eau6885","age":"27","subject":"u8ba1u7b97u673au79d1u5b66u4e0eu6280u672f"},{"id":"2","name":"u5f20u6c9bu9716","age":"21","subject":"u8f6fu4ef6u5de5u7a0b"}]';

首先要用 json_decode 對 JSON 格式的字符串進行編碼,

$students = json_decode($json);

直接在PHP文件用$students :

for($i=0;$i<count($students);$i++){          echo "姓名:".$students[$i]['name']."年齡:".$students[$i]['age']."專業:".$students[$i]['subject']."<br/>";     }

則報錯如下:

Fatal error : Cannot use objectof type stdClass as array in  D:wampwwwtest.php on line  18

這時候打印一下 $students :

var_dump($students);

會輸出:

array(2) {         [0]=>         object(stdClass)#2 (4) {              ["id"]=> string(1)"1"              ["name"]=> string(9)"張雪梅"              ["age"]=> string(2)"27"         object(stdClass)#3 (4) {                              這個就說明轉換的json字符串轉為對象而非數組,請看下面的紅色背景字
["subject"]=>string(24) "計算機科學與技術"         }         [1]=>             ["id"]=> string(1)"2"             ["name"]=> string(9)"張沛霖"             ["age"]=> string(2)"21"            ["subject"]=> string(12) "軟件工程"         }     }

可見,返回的結果是 object 而非 array。應以對象形式訪問:

foreach($students as $obj){          echo "姓名:".$obj->name."年齡:".$obj->age."專業:".$obj->subject."<br/>";     }

輸出結果為:

姓名:張雪梅 年齡:27 專業:計算機科學與技術
姓名:張沛霖 年齡:21 專業:軟件工程

mixedjson_decode ( string$json [, bool$assoc ] )

說明:接受一個 JSON 格式的字符串并且把它轉換為 PHP 變量。

json_decode 可接收兩個參數:

json:待解碼的jsonstring 格式的字符串。

assoc:當該參數為 TRUE 時,將返回 array 而非 object 。

 $students = json_decode($json,true);

這時打印一下 $students :

var_dump($students);

輸出:

array(2) {         [0]=>         array(4) {             ["id"]=> string(1)"1"             ["name"]=> string(9)"張雪梅"             ["age"]=> string(2)"27"             ["subject"]=>string(24) "計算機科學與技術"         }         [1]=>         array(4) {            ["id"]=> string(1)"2"            ["name"]=> string(9)"張沛霖"            ["age"]=> string(2)"21"            ["subject"]=>string(12) "軟件工程"         }     }

這時,$students 就是個數組了,可以直接用:

for($i=0;$i<count($students);$i++){      echo "姓名:".$students[$i]['name']."年齡:".$students[$i]['age']."專業:".$students[$i]['subject']."<br/>"; }

輸出結果為:

姓名:張雪梅 年齡:27 專業:計算機科學與技術
姓名:張沛霖 年齡:21 專業:軟件工程

總結:

在PHP代碼中處理JSON 格式的字符串的兩種方法:

方法一:

$json= '[{"id":"1","name":"u5f20u96eau6885","age":"27","subject":"u8ba1u7b97u673au79d1u5b66u4e0eu6280u672f"},{"id":"2","name":"u5f20u6c9bu9716","age":"21","subject":"u8f6fu4ef6u5de5u7a0b"}]'; $students= json_decode($json);//得到的是 object foreach($studentsas $obj){     echo "姓名:".$obj->name."&nbsp;&nbsp;&nbsp;年 齡:".$obj->age."&nbsp;&nbsp;&nbsp;專 業:".$obj->subject."<br />";}

方法二:

$json= '[{"id":"1","name":"u5f20u96eau6885","age":"27","subject":"u8ba1u7b97u673au79d1u5b66u4e0eu6280u672f"},{"id":"2","name":"u5f20u6c9bu9716","age":"21","subject":"u8f6fu4ef6u5de5u7a0b"}]'; $students= json_decode($json, true);//得到的是 array for($i=0;$i<count($students);$i++){    echo "姓名:".$students[$i]['name']."&nbsp;&nbsp;&nbsp;年 齡:".$students[$i]['age']."&nbsp;&nbsp;&nbsp;專 業:".$students[$i]['subject']."<br />";

———————————————————————————————————————————

php json字符串如何轉數組

php json字符串如何轉數組

php json字符串如何轉數組

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
99久久精品国产高清一区二区| 日韩免费视频观看| 人妖在线精品一区二区三区| 久久久久久人妻一区精品| 99久久国产宗和精品1上映| 国产乱码精品一区二区三| 亚洲精品无码成人片在线观看| 日韩电影免费在线观看视频| jizz中国jizz欧洲/日韩在线| 亚洲日韩人妻第一页| 国产精品久久久久久久久久久搜索 | 国产精品1000夫妇激情啪发布| 国产精品一区视频| 精品久久久久久蜜臂a∨| 亚洲精品亚洲人成在线播放| 91嫩草亚洲精品| 国产第一福利精品导航| 精品爆乳一区二区三区无码av| 精品免费久久久久久久| 久久精品国产亚洲AV久| 国产成人精品久久一区二区三区 | 强制高潮18XXXXHD日韩| 亚洲日韩中文字幕在线播放| heyzo亚洲精品日韩| 日韩av无码中文字幕| 日韩免费视频播放| 丁香六月婷婷精品免费观看| 国产成人久久精品麻豆一区| 国产精品亚洲视频| 久久久久人妻一区精品| 国产成人精品午夜二三区波多野| 伊人久久精品午夜| 青青青国产依人精品视频| 久久精品国产亚洲香蕉| 亚洲AV成人无码久久精品老人| 久久永久免费人妻精品下载| 91精品国产自产91精品| 国产精品高清视亚洲精品| 无码精品一区二区三区| 精品国产AV无码一区二区三区| 国产精品一区二区无线|