В настоящее время я использую форму Google API Google, и я пытаюсь получить массив «viewCount». Я пробовал это уже без везения. Вот ссылка, которую я сейчас использую.
Я попробовал это раньше, не повезло.
$url = 'http://gdata.youtube.com/feeds/api/users/gudjondaniel/uploads?max-results=1'; $source = file_get_contents($url); $xml = new SimpleXMLElement($source); $title = $xml->entry->viewCount;
Любая помощь приветствуется.
Для других людей: OP хочет получить доступ к <yt:statistics favoriteCount="0" viewCount="301" />
который является дочерним <entry> node
.
Попробуйте это (xpath):
$file = simplexml_load_file('http://gdata.youtube.com/feeds/api/users/gudjondaniel/uploads?max-results=1'); var_dump($file->xpath('//yt:statistics'));
Вы увидите следующее:
array(1) { [0] => class SimpleXMLElement#13 (1) { public $@attributes => array(2) { 'favoriteCount' => string(1) "0" 'viewCount' => string(3) "301" } } }
редактировать:
Окончательный код будет выглядеть так:
$file = simplexml_load_file('http://gdata.youtube.com/feeds/api/users/gudjondaniel/uploads?max-results=1'); $xpath = $file->xpath('//yt:statistics'); $attrs = $xpath[0]->attributes(); echo (string) $attrs->viewCount;
Кстати, SimpleXMLElement – это инструмент таблеток-PHP, который, как вы можете видеть, делает невозможным доступ к элементу, например, <yt:statistics>
. Другие платформы используют xpath как стандарт.