Разбор ответа JSON с использованием PHP для API Yelp - PullRequest
0 голосов
/ 12 июля 2011

Я не могу разобрать информацию, отправленную API Yelp. Вот вывод: http://www.coroomer.com/apartments/yelp.php.

Вот фрагмент кода, с которым у меня возникли проблемы:

// Send Yelp API Call
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $signed_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
$response = curl_exec($ch);
curl_close($ch);

// Handle Yelp response data
$obj = json_decode($response,true);

// Print it for debugging
//print_r($obj);

echo var_dump($obj);

if (isset($bus)) {
foreach($obj[businesses] as $bus){
    echo $bus[name];
    echo $bus[reviews];
    }
}

Проблема в том, что я не могу получить правильно «отформатированный» вывод. Отформатированный так, как в нем выглядит как обзор темы на Yelp. Любая помощь приветствуется.

1 Ответ

1 голос
/ 12 июля 2011

Не понятно, что именно вы спрашиваете.Однако ...

1.Исправьте свои предупреждения и уведомления в первую очередь.Не пытайтесь получить доступ к массивам без одинарных или двойных кавычек вокруг индексов, потому что PHP будет пытаться разрешить их как CONSTANTS.Что приведет к:

a.Более медленное время работы

b.Головные боли, если существует константа с этим индексом

Измените этот код:

foreach($obj[businesses] as $bus){
    echo $bus[name];
    echo $bus[reviews];

на

foreach($obj['businesses'] as $bus){
    echo $bus['name'];
    echo $bus['reviews'];

2.У дампа нет массива с индексом businesses, что вы пытаетесь повторить здесь?

...