2014-09-06 2 views
0

FILTER_VALIDATE_URL возвращает правда при проверке что-то вроде: http://example.com или http://www.example.com,, но возвращает ложные для www.example.comНеактивированные URL (ы) с PHP Filtering

Есть ли флаг, который позволил бы URLs как www.example.com быть подтверждено как действительный? Я попытался посмотреть в документации, но не было ничего, что могло бы потенциально решить проблему.

Если такого флага нет, что я должен использовать в качестве альтернативного метода для проверки URL-адресов?

+0

Вы можете посмотреть на мой вопрос, http://stackoverflow.com/questions/25596376/only-match-url-beginning-with-www-or-https Я искал регулярное выражение, что будет соответствовать этим URL (см. Ответ). –

ответ

0

Вы можете передать строку через parse_url, а затем добавить любые элементы, которые отсутствуют, например.

if ($parts = parse_url($url)) { 
    if (!isset($parts["scheme"])) 
    { 
     $url = "http://$url"; 
    } 
} 

Тогда вы должны использовать $ url с FILTER_VALIDATE_URL.

Посмотрите Here

parse_url