Как получить продолжительность видео с YouTube на PHP+API?
Итак, мы с вами уже научились получать API KEY сервиса YouTube для получения данных о видео, и сегодня мы рассмотрим первый и простой способ получения информации о нем, а именно – о продолжительности.
Напишем небольшую функцию, которая и будет возвращать нам необходимые данные:
function get_time_youtube($id_video) {
$api_key = 'AIzaSyC-tRTwkGhKL4eegGg6utVtsN4lklTs8oU';
$get_data = file_get_contents('https://www.googleapis.com/youtube/v3/videos?part=snippet,contentDetails,statistics&id='.$id_video.'&key='.$api_key);
$get_data = json_decode($get_data, true);
$result_time = $get_data['items']['0']['contentDetails']['duration'];
$result_time = new \DateInterval($result_time);
$total_sec = $result_time->days * 86400 + $result_time->h * 3600 + $result_time->i * 60 + $result_time->s;
$total_time = new DateTime('@'.$total_sec);
return $total_time->format('H:i:s');
}
А так будет выглядеть пример ее использования:
echo 'Длительность ролика: '.get_time_youtube('bhXZiG4bsjA');
На что тут стоит обратить внимание?
- $api_key – это ваш персональный ключ доступа. О том, как его получить, написано здесь.
- bhXZiG4bsjA – ID видео, узнать его можно по ссылке.
Например, в ссылке на видео https://www.youtube.com/watch?v=bhXZiG4bsjA – часть bhXZiG4bsjA и есть нужный вам ID.
Если что-то вам показалось непонятным – пишите об этом в комментариях.