2014-02-14 1 views
0

Я новичок в php, и я формулирую, как вернуть ассоциативный массив типа данных JSON? Так вот мой PHP код:Как получить доступ к элементам в JSON-декодированном ассоциативном массиве PHP

$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); 

Вот фрагмент того, что выглядит данные, как, когда я сбросить его на экран:

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" 
      } 

Теперь как бы я идти о доступе к первому элементу массива? Я пробовал:

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

и он не работает. Может ли кто-нибудь помочь? Также есть приличный отладчик для php на Mac? Цените любую помощь.

+0

Word of advice, когда вы 'print_r()' что-то в HTML, используйте «источник страницы» перед копированием/вставкой. –

+0

_ «Как получить доступ к элементам в JSON-декодированном ассоциативном массиве PHP» _ - таким же образом, как если бы массив был _not_ «из JSON». И если вы не знаете, как это сделать _that_, тогда сначала вы должны прочитать некоторые основы. – CBroe

+0

ok cool thanks, Это раздражает, что вы не можете отлаживать такие проблемы. Есть ли способ сделать такое? У меня есть mac. – user3124081

ответ

0

Попробуйте что $data['product'][0]['styles'][0]['originalPrice']

бы также рекомендуем вам взглянуть на документацию, чтобы узнать больше о arrays.

+0

так как бы вы предложили мне за цикл каждый элемент цены в массиве? – user3124081

+0

@ пользователь3124081 Думаю использование foreach loop. 'foreach ($ data ['product'] AS $ product) {echo $ product ['styles'] [0] ['originalPrice']; } ' ' –

Смежные вопросы