Как я могу проверить, существует ли видео Vimeo? - PullRequest
1 голос
/ 12 октября 2010

В настоящее время у меня есть функция, которая создает проигрыватель vimeo на основе идентификатора vimeo

function create_video_player_by_ID($video_id){
    $player = '<iframe src="http://player.vimeo.com/video/';
    $player .= $video_id.'" ';
    $player .= 'width="'.$this->width.'" ';
    $player .= 'height="'.$this->height.'" ';
    $player .=  'frameborder="0"></iframe>';



    return $player;
}

В настоящее время я получаю аплодисменты vimeo в окне проигрывателя, если идентификатор недействителен, но я хотел бы сделать больше с этим. Как я могу получить логическое значение для возврата перед видеоплеером, чтобы я мог сделать что-то еще при сбое?

Ответы [ 3 ]

1 голос
/ 11 октября 2013

Для встраивания наилучшим подходом будет сделать вызов oEmbed с URL-адресом видео. Он вернет код не-200, если видео не может быть встроено.

Vimeo oEmbed docs

1 голос
/ 09 февраля 2019

Вы можете использовать метод запроса HEAD, используя URL-адрес видео.

function check_remote_video_exists($video_url) {

    $headers = @get_headers($video_url);

    return (strpos($headers[0], '200') > 0) ? true : false;
}

Проверьте свой URL-адрес vimeo следующим образом:

if (check_remote_video_exists('YOUR_VIMEO_VIDEO_URL')) {

    // video exists, do stuff

} else {

    // video does not exist, do other stuff

}

Надеюсь, это кому-нибудь поможет.

0 голосов
/ 12 октября 2010

Попробуйте выполнить запрос HEAD для URL-адреса src, чтобы убедиться, что он возвращает статус 200 вместо 404.

Вы также можете использовать API видео для получения информации об идее.См. их документы .

...