Как проверить доменное имя в PHP?
Возможно ли это без использования регулярных выражений?
Например, я хочу проверить, что строка является допустимым доменом:
domain-name
abcd
example
Являются действительными доменами. Это недействительно, конечно:
domaia@name
ab$%cd
И так далее. Таким образом, в основном это должно начинаться с буквенно-цифрового символа, тогда может быть больше символов alnum плюс также дефис. И это также должно заканчиваться символом alnum.
Если оно'не возможно, не могли бы вы предложить мне шаблон регулярного выражения для этого?
РЕДАКТИРОВАТЬ:
Почему нетэто работа? Я использую preg_match неправильно?
$domain = '@djkal';
$regexp = '/^[a-zA-Z0-9][a-zA-Z0-9\-\_]+[a-zA-Z0-9]$/';
if (false === preg_match($regexp, $domain)) {
throw new Exception('Domain invalid');
}