JSON — Как получить изображение профиля канала YouTube (PHP)?

Так что моей странице удается подключиться к каналу YouTube через API YouTube и сохранить токен и т. Д., Но я просто не нашел ни одного примера кода для получения изображения профиля YouTube.

Я нашел еще одну ветку с прошлого года, где кто-то ответил с помощью json-скрипта. Это выглядит следующим образом:

var json = new WebClient().DownloadString("http://gdata.youtube.com/feeds/api/users/"+YT_CHANNEL_NAME);
string str = "thumbnail url='";
string ImagePic = json.Substring(json.IndexOf("thumbnail url") + str.Length);
if (ImagePic.Contains("'"))
{
ImagePic = ImagePic.Remove(ImagePic.IndexOf("'"));
ImageChannel.ImageUrl = ImagePic;

}

У меня нет опыта работы с JSON, и я не могу понять, подходит ли мне этот код и как его реализовать в моем PHP-коде.

0

Решение

Это как получить изображение профиля из канала YouTube в PHP.

1, скачать API PHP Вот

2, получите Ключ API

4, вам также нужен идентификатор канала, если это ваша собственная учетная запись, вы можете получить его от Вот

Это код php

<?php

$DEVELOPER_KEY = 'YOUR_KEY';

// Call set_include_path() as needed to point to your client library.
require_once('/path/to/api/src/Google_Client.php');
require_once('/path/to/api/src/contrib/Google_YouTubeService.php');

$client = new Google_Client();
$client->setDeveloperKey($DEVELOPER_KEY);

$youtube = new Google_YoutubeService($client);
$htmlBody = '';
try {

$channelsResponse = $youtube->channels->listChannels('contentDetails', array(
'id' => 'CHANNEL_ID',
'part' => 'snippet',
));


//echo '<pre>';
//print_r($channelsResponse);
//echo '</pre>';
$img = $channelsResponse['items'][0]['snippet']['thumbnails']['default']['url'];

echo "<img src='$img'>";

} catch (Google_ServiceException $e) {
$htmlBody .= sprintf('<p>A service error occurred: <code>%s</code></p>', htmlspecialchars($e->getMessage()));
} catch (Google_Exception $e) {
$htmlBody .= sprintf('<p>An client error occurred: <code>%s</code></p>', htmlspecialchars($e->getMessage()));
}
echo $htmlBody;
?>

Он возвращается как обычный массив, и документы Вот, Вы также можете использовать «средний» или «высокий» вместо «по умолчанию»

1

Другие решения

Других решений пока нет …