PHP: Проверка URL-адреса

Задача: необходимо проверить на валидность и существование URL, который отправляется пользователем через форму на сайте.

Для решения этой задачи написал простую функцию проверки, которую собственно и привожу ниже:

/**
     * Функция проверки URL
     *
     * @param  string $url
     * @return boolean
     */
function checkUrl($url) {

if (empty($url)) {
return false;
}

// проверяем строку на присутствие в ее начале
// протокола (http://|ftp://)
if (!preg_match("~^(?:f|ht)tps?://~i", $url)) {
$url = "http://" . $url;
}

// проверяем строку на присутствие в ней
// валидного URL'а
if (preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $url)) {
// далее проверяем URL на существование...
// нет необходимости полностью загружать сайт,
// поэтому проверям только заголовки
return @get_headers($url);
}

return false;
}

Автор: Sergiy Kamolov

Друзья помогите этому контенту стать доступнее в социальных сетях.

Не проходи мимо жмакни по кнопке возможно кому то еще он будет полезен!