Неустранимая ошибка PHP: вызов функции-члена getAttribute () для необъекта

0

Я очень ценю, если вы можете помочь мне найти то, что неправильно с моим кодом.. Я пытаюсь получить данные с определенного канала YouTube. Данные, которые я пытаюсь получить, это: общее количество просмотров, подписчиков и эскиз.

код правильно покажет мне общее количество просмотров и подписчиков, но код эскизов не работает. Я получаю "Неустранимая ошибка: вызов функции-члена getAttribute() для не-объекта"

Я очень ценю ваше время и помощь, спасибо.

 <?php
function GroupViews($username) {
 $xdoc = new DomDocument;
 $xdoc->Load('http://gdata.youtube.com/feeds/api/users/ArrolladoraLimonVEVO');
 $ytStatistics = $xdoc->getElementsByTagName('statistics')->item(0);
 $totalYouTubeViews = $ytStatistics->getAttribute('totalUploadViews');
return number_format($totalYouTubeViews);
}
?>
<?php echo GroupViews(0); ?>


<?php   
    function GetytSubscribers($username) {
    $xdoc = new DomDocument;
    $xdoc->Load('http://gdata.youtube.com/feeds/api/users/'.$username.'');
    $ytStatistics = $xdoc->getElementsByTagName('statistics')->item(0);
    $totalYouTubeSubscribers = $ytStatistics->getAttribute('subscriberCount');
    return number_format($totalYouTubeSubscribers);
}
?>


<?php echo GetytSubscribers('ArrolladoraLimonVEVO'); ?>





<?php   
    function GetytThumbnail($username) {
    $xdoc = new DomDocument;
    $xdoc->Load('http://gdata.youtube.com/feeds/api/users/'.$username.'');
    $ytThumbnail = $xdoc->getElementsByTagName('media$thumbnail')->item(0);
    $thumbnail = $ytThumbnail->getAttribute('url');
    return number_format($thumbnail);
}
?>


<?php echo GetytThumbnail('ArrolladoraLimonVEVO'); ?>
Теги:
youtube

1 ответ

1
Лучший ответ

это кажется более сложным с использованием XML с этого URL-адреса. Почему бы вам не использовать формат JSON? Просто добавьте '? alt= json' в свой адрес gdata.youtube. Это пример одной из ваших функций

function GetytThumbnail($username) {
    $url = 'http://gdata.youtube.com/feeds/api/users/'.$username.'?alt=json';
    $json = file_get_contents($url);
    $obj = json_decode($json,true);
    return $obj['entry']['media$thumbnail']['url'];
}

Вам просто нужно изменить оператор возврата для других функций. Надеюсь, что это полезно :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню