Есть входная строка(ссылка), может быть вида facebook.com/ или http://facebook.com/ или facebook.com/events/ и т.д.
$urls = [["youtube.com/watch?v=ТУТ КАКОЙ ТО ТЕКСТ", "YouTube", ["watch","likes","dislikes","comments","top"]],
["youtube.com/user/ТУТ КАКОЙ ТО ТЕКСТ", "YouTube", ["subscribe"]],
["youtube.com/channel/ТУТ КАКОЙ ТО ТЕКСТ", "YouTube", ["subscribe"]],
["youtu.be/ТУТ КАКОЙ ТО ТЕКСТ", "YouTube", ["watch","likes","dislikes","comments","top"]],
["facebook.com/ТУТ КАКОЙ ТО ТЕКСТ", "Facebook", ["subscribe"]],
["facebook.com/group/ТУТ КАКОЙ ТО ТЕКСТ", "Facebook", ["group"]],
["facebook.com/events/ТУТ КАКОЙ ТО ТЕКСТ", "Facebook", ["events"]],
["facebook.com/facebook/photos/ТУТ КАКОЙ ТО ТЕКСТ", "Facebook", ["photos"]],
["facebook.com/facebook/videos/ТУТ КАКОЙ ТО ТЕКСТ", "Facebook", ["videos"]],
["facebook.com//posts/ТУТ КАКОЙ ТО ТЕКСТ", "Facebook", ["posts"]],
["itunes.apple.com/ru/album/ТУТ КАКОЙ ТО ТЕКСТ", "iTunes", ["music_in_top","album_in_top"]],
["itunes.apple.com/ru/music-video/ТУТ КАКОЙ ТО ТЕКСТ", "iTunes", ["video_in_top"]]
];
Нужно проверить валидная ссылка или нет
Составьте регулярные выражения для ваших строк, и проверьте на них. Из примера не понятно за что отвечают второй и третий элементы ваших массивов. Добавьте проверку на http вначале, замените "ТУТ КАКОЙ ТО ТЕКСТ" на .* и выражение готово.
preg_match("#^(https?://)?youtube.com/watch\?v=.*$#", $url);
Если нужно проверить на то что вместо "ТУТ КАКОЙ ТО ТЕКСТ" должно быть одно из значений третьего массива, то составьте такую регулярку:
preg_match("#^(https?://)?youtube.com/watch\?v=(watch|likes|dislikes|comments|top)$#", $url);
Если нет - уточните что нужно сделать.
Вот решение, для каждой ссылки делать свое выражение, для
$url = "youtube.com/watch?v=ТУТ КАКОЙ ТО ТЕКСТ";
Делаем так:
"~youtube.com/watch\?v=[^/]+$~"
Кусок кода [^/]
значит Любые символы кроме / , если нужно просто любые символы тогда нужно заменить [^/]
на .
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Записываю (кэширую) небольшое кол-во товаров (хитов) в файл при помощи функции:
как посчитать сумму числовых значений в столбце 'cost' из таблицы MySql, чтобы в переменную заносилось в данном случае значение 4850 и выводилась?