[請益] PHP抓json後使用foreach問題
最近用PHP玩json的時候發現
要使用foreach的時候居然無法迴圈列出
以下是code
<?php
1 $json='
2 {
3 "test":[
4 {
5 "pid":34,
6 "name":cat
7 },
8 {
9 "pid":35,
10 "name":dog
11 }
12 ]
13 }';
14
15 $testjson=json_decode($json);
16 echo $testjson->test[0]->pid."<br/>";
17 foreach($testjson as $key =>$value){
18 $value[0]->pid;
19 }
?>
一開始15行傳到testjson是物件
可是當使用foreach後傳到$value的時候就變成一種奇怪的狀態
用var_dump看了一下
似乎是物件在陣列裏面?
更讓我驚訝的是$key裏面居然是test冏
然後pid只跑出一筆,可是不$value[0]又會錯誤,被那個test卡著
我查了一下有兩個解決方式
1.改15行的json_decode($json,true)直接變成陣列
可是我又很不想用陣列
2.使用for迴圈但看起來好丑,也不太想用
各位大大有別的思路嗎? 小弟在此先謝過
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.46.94.61
※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1478012562.A.AE9.html
※ 編輯: yongb (114.46.94.61), 11/01/2016 23:07:30
→
11/01 23:35, , 1F
11/01 23:35, 1F
→
11/01 23:35, , 2F
11/01 23:35, 2F
→
11/01 23:36, , 3F
11/01 23:36, 3F
→
11/01 23:40, , 4F
11/01 23:40, 4F
→
11/01 23:42, , 5F
11/01 23:42, 5F
可是我var_dump($testjson) //有加true
跟 var_dump($value)印出不一樣的東西耶
我在研究一下吧
推
11/01 23:46, , 6F
11/01 23:46, 6F
※ 編輯: yongb (114.46.94.61), 11/02/2016 00:28:57
→
11/02 01:35, , 7F
11/02 01:35, 7F
!!!!!!!!!!!!!!!!!!!!!!!!!!!!
這 !!!!
我怎麼就沒想到....我馬上試試
謝謝大大
※ 編輯: yongb (114.46.90.135), 11/02/2016 17:27:27
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 3 篇):
PHP 近期熱門文章
PTT數位生活區 即時熱門文章