Я пытаюсь вернуть данные хранилища iTunes, которые мне удалось сделать успешно.
Я нашел это: https://github.com/ijanerik/PHP-iTunes-API, это здорово!
Единственное, что я не уверен в том, как печатать отдельные значения.
Например, мой код выглядит так:
include("classes/itunes.php");
$albums = iTunes::lookup(304576306, 'id', array(
'entity' => 'song'
))->results;
// var_dump($albums);
print_r($albums);
Который возвращает все результаты: http://joshrodg.com/music/test/index.php.
Как мне вернуть только имя trackName
или artistName
из массива?
В этом примере показано, как выполнить поиск, а не как получить отдельные данные, которые будут возвращены.
Я пробовал foreach
, но, возможно, я делаю это неправильно:
foreach($albums as $album):
echo $album['trackName'];
echo $album['artistName'];
endforeach;
Каждый раз, когда я пытаюсь это сделать, страницы whitescreens.
Если я просто попробую echo $album['trackName'];
или echo $albums['trackName'];
страница также whitescreens.
Пока единственный способ вернуть данные - использовать: print_r($albums);
или var_dump($albums);
Я знаю, что это просто, просто не уверен, что мне здесь не хватает.
Попробуй это:
foreach ($albums as $a) {
if ($a->wrapperType == 'track') {
echo $a->trackName;
echo $a->artistName;
}
}
Он возвращает результаты как объект, а не массив. Попробуйте запустить их следующим образом:
foreach($albums as $album):
{
echo $album->trackName;
echo $album->artistName;
}
display_errors
чтобы вы могли прочитать сообщение об ошибке. Вероятно, это ошибка, потому что одно из этих имен свойств существует не для всех объектов. Ответ Уолдсона работает, потому что он написал в функциональности, чтобы проверить это.