Как проверить если есть в строке ссылка php

В данной стати рассмотрим несколько примеров
кода которые покажут как
проверить если есть в строке ссылка php.

<?php
$link = "https://weburoki.pro";
?>



Правильный подход в PHP 5

Использовать будем filter_var().

<?php
if(filter_var($link, FILTER_VALIDATE_URL)) {
   echo "Ура! В строке есть ссылка. :)";
}else {
   echo "В строке нет ссылки.";
}
?>

Старые методы проверки

Один из самых популярных методов это регулярные выражения.

Вот готовая функция:

<?php

function is_link($link) {
  return preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $link);
}
if(is_link($link)) {
   echo "Ура! В строке есть ссылка. :)";
}else {
   echo "В строке нет ссылки.";
}

?>

Можно регулярные выражения по разному писать, но их главный минус это скорость.

Готовая функция PHP будет в разы быстрее работать чем правильно написанное регулярное выражение.

Valeriu :