29. ramzes, почему оффтоп? Мой вариант - юзать функцию filter_var() и флаги фильтрации/проверки URL.
А почему его функция бред?
Я так и не понял: это функция фильтрации или валидации? Если валидации, то должна возвращать TRUE/FALSE.
Первый раз вижу, чтобы при ошибке возвращали неизвесную константу error, а не булевое значение FALSE.
if(strlen($url) == 0) лучше заменить на if($url == NULL). Шаблон во второй регулярке страшный.
if ( !strstr ($url,"://")) $url = "http://".$url;
strstr возвращает строку или FALSE. Правильно так
if (strstr ($url,"://") !== FALSE)
Изменил: Артур (18.04.2010 / 20:01)