Я пытаюсь проверить URL-адреса YouTube для своего приложения.
До сих пор у меня есть следующее:
// Set the youtube URL
$youtube_url = "www.youtube.com/watch?v=vpfzjcCzdtCk";
if (preg_match("/((http\:\/\/){0,}(www\.){0,}(youtube\.com){1} || (youtu\.be){1}(\/watch\?v\=[^\s]){1})/", $youtube_url) == 1)
{
echo "Valid";
else
{
echo "Invalid";
}
Я хочу проверить следующие варианты Youtube Urls:
- С и без http://
- С www и без него.
- С URL-адресами youtube.com и youtu.be
- Должен иметь/смотреть? v =
- Должна иметь уникальную видео-строку (в приведенном выше примере "vpfzjcCzdtCk" )
Однако, я не думаю, что у меня есть моя логика, потому что почему-то она возвращает true для: www.youtube.co/watch?v=vpfzjcCzdtCk
(обратите внимание, что я написал ее неправильно с помощью .co
и не .com
)