2014-09-08 3 views
-1

Мне нужна помощь с этим скриптом, он возвращает только состояние, и ему нужно вернуть шоу и freeseats.JSON get arrays from string php

$json_string = 'http://framecreators.nl/efteling/data.php'; 
$var = json_decode(file_get_contents($json_string), true); 
foreach($var['AttractionInfo'] as $info) { 
    if($info['Id'] == 'raveleijn') { 
     $informatie = $info['ShowTimes']; 
     echo $info['State']; 
     break; 
    } 
} 
echo $informatie; 

Мой JSON Файл = http://framecreators.nl/efteling/data.php

+0

Пожалуйста, включите весь соответствующий код и примерные данные встроены в вопрос, а не как ссылки. –

+0

Время показа - NULL. – jeugen

+0

Не для id Raveleijn :) –

ответ

0

$info['ShowTimes'] является null. Постарайтесь var_dump($informatie) Попробуйте это:

$json_string = 'http://framecreators.nl/efteling/data.php'; 
$var = json_decode(file_get_contents($json_string), true); 
foreach($var['AttractionInfo'] as $info) { 

    if($info['Id'] == 'raveleijn') { 
     $informatie = $info['ShowTimes']; 
     echo $info['State']; 

     break; 
    } 

} 
var_dump($informatie); 

отредактированы для запроса:

$json_string = 'http://framecreators.nl/efteling/data.php'; 
$var = json_decode(file_get_contents($json_string), true); 
foreach($var['AttractionInfo'] as $info) { 

    if($info['Id'] == 'raveleijn') { 
     $informatie = $info; 


     break; 
    } 

} 
echo is_null($informatie['State'])? 'Not set' : $informatie['State']; 
echo '<br>'; 
echo is_null($informatie['ShowTimes'])? 'Not set' : $informatie['ShowTimes']; 

Но я не вижу «FreeSeats» индекс в ваших входных данных, пожалуйста, проверьте ваши входные данные

+0

Omg thanks. Но как мне получить var ShowDateTime и FreeSeats? –

+0

@MickGeen ShowDateTime и FreeSeats не находятся в json. Вставьте его в jsonlint.com или установите json pretty-print extension в своем браузере, чтобы лучше просмотреть данные json. – JimL

+0

@ JimL имеют право, вы должны проверить свои входные данные. – jeugen