PHP: проверьте $ msg на наличие ссылки yt - PullRequest
0 голосов
/ 09 ноября 2010

В сообщениях, которые пользователи пишут с помощью eachother, я хочу превратить ссылки Youtube в миниатюру YouTube + название.

Итак, как я могу проверить, содержит ли $ msg ссылку на видео YouTube, и если это так, он должен взять ее идентификатор видео (? V =) и запустить это:

$.getScript( 'http://gdata.youtube.com/feeds/api/videos/$videoid?v=2&alt=json-in-script&callback=youtubeFetchDataCallback' );

Как это можно сделать?

1 Ответ

1 голос
/ 09 ноября 2010

Здесь уже частично разрешено: анализировать идентификатор видео YouTube, используя preg_match

РЕДАКТИРОВАТЬ в качестве альтернативы вы можете использовать parse_url () в PHP, чтобы убедиться, что хост - это youtube, и если он читается в строке запроса, разбивается на пары ключ / значение и читает значение «v»

РЕДАКТИРОВАТЬ 2

<?php
$url = "http://www.youtube.com/watch?v=QDe6MZQjpho";
$url = parse_url($url);
if($url['host'] == "www.youtube.com") {
    parse_str($url['query'], $output);
    $videoID = $output['v'];
} else {
    echo "not youtube.com";
}
?>

РЕДАКТИРОВАТЬ 3 Другой способ

<?php
$url = "http://www.youtube.com/watch?v=QDe6MZQjpho";
if(preg_match("#http://(.*)\.youtube\.com/watch\?v=(.*)(&(.*))?#", $url, $matches)){
    $videoID = $matches[2];
} else {
    echo "not youtube.com";
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...