2015-05-15 5 views
0

Мне интересно, как получить данные JSON из файла JSON, который содержит квадратные скобки. У меня есть код JSON как это:Получение данных JSON квадратных скобок

"events": [ 
    { 
     "id": 462467, 
     "eventDetails": [ 
      70, 
      1, 
      [ 
       "Swansea City - Manchester City", 
       "Swansea City - Manchester City", 
       "Swansea-ManCity" 
      ], 

Я использую заявление Foreach получить значения для «eventDetails», но как я могу разобраться в «1», а также получать каждое имя команды по отдельности? Оператор php, который я пытаюсь выполнить, это: Если второе значение равно «1», то выберите имена команд.

Это то, что я до сих пор:

foreach($array2['events'] as $key=>$val) 

    {  
     foreach($val['eventDetails'] as $values) 
     { 

      if ($values['70,1']) { echo "test"; } 

     } 
    } 
+0

Просто используйте функцию json_decode(). –

ответ

0

В JSon скобках означают StdClass (объект), так:

foreach($array2->events as $key=>$val){  
    echo($val->eventDetails[0]);//70 
    echo($val->eventDetails[1]);//1 
    foreach($val->eventDetails[2] as $team) 
     echo $team; 
} 
+0

«Команда эхо-доллара» выводит все три данных команды «Суонси-Сити» - «Манчестер Сити Свансиса Сити» - «Манчестер Сити Сванси-Мансити». Как получить одно значение для Swansea и одно значение для ManCity? – user2282217

+0

Используйте функцию array_unique() для удаления повторяющихся значений. –

1

Вы можете попробовать использовать file_get_contents() так:

$content = file_get_contents($filename); 
$json = json_decode($content); 
print_r($json); 

Более подробная информация здесь:

https://php.net/manual/en/function.file-get-contents.php

И здесь :

https://php.net/manual/en/function.json-decode.php

+0

Как я могу использовать json_decode для извлечения, например, имени команды отдельно? json_decode возвращает 'Array ([0] => Суонси Сити - Манчестер Сити [1] => Суонси Сити - Манчестер Сити [2] => Суонси-Манчестер). – user2282217

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