2014-02-14 111 views
0

我是新來的PHP,我的措辭如何返回JSON數據類型的關聯數組?因此,這裏是我的PHP代碼:如何訪問JSON解碼關聯數組中的元素PHP

array(2) { 
["product"] => array(1) { 
    [0]=> array(7) { 
     ["styles"]=> array(13) { 
      [0]=> array(7) { 
       ["price"]=> string(6) "$64.95" 
       ["productUrl"]=> string(46) "http://www.zappos.com/product/7515478/color/25" 
       ["percentOff"]=> string(2) "0%" 
       ["styleId"]=> string(7) "1788226" 
       ["imageUrl"]=> string(65) "http://www.zappos.com/images/z/1/7/8/8/2/2/1788226-p-DETAILED.jpg" 
       ["color"]=> string(6) "Almond" 
       ["originalPrice"]=> string(6) "$64.95" 
      } 

現在,我將如何去訪問第一個數組元素:

$JSON = file_get_contents($url); 

// echo the JSON (you can echo this to JavaScript to use it there) 
//echo $JSON; 

// You can decode it to process it in PHP 
$data = json_decode($JSON,true); 
var_dump($data); 

這裏的數據以何種方式當我把它轉儲到屏幕上像一個片段? 我試過了:

echo $data[0][0]['orignalPrice']; 

它不起作用。有人可以幫忙嗎?還有一個體面的調試器在Mac上的PHP?感謝任何幫助。

+0

建議的話,當你在HTML中使用'print_r()'的東西時,在複製/粘貼之前使用「頁面源代碼」。 –

+0

_「如何訪問JSON解碼的關聯數組PHP中的元素」_ - 以同樣的方式,就好像數組不是「來自JSON」一樣。如果你不知道該怎麼做,那麼你應該先閱讀一些基礎知識。 – CBroe

+0

好酷謝謝,這是一種煩人的,你不能調試這樣的問題。有沒有辦法做這樣的事情?我有一個mac。 – user3124081

回答

0

試一下$data['product'][0]['styles'][0]['originalPrice']

也建議你有一個文檔看看,更多地瞭解arrays

+0

所以你會如何建議我循環數組中的每一項價格? – user3124081

+0

@ user3124081我想用foreach循環。 ($ data ['product'] AS $ product){echo $ product ['styles'] [0] ['originalPrice']; }' ' –