Как проверить, содержит ли переменная действительный URL, используя PHP и jQuery?

Я пытаюсь сделать скрипт проверки Whois.

Пользователь может отправить некоторый адрес домена, а затем получить сообщение, если он доступен или нет.

$_POST['url'] это представленное значение пользователем.

Как мне узнать, является ли эта переменная адресом доменного имени?

Должно дать true для доменов, таких как:

http://google.com
www.google.com
http://www.google.com
google.com

То же самое для javascript (я также использую ajax-validation)?

2 ответа

Решение

Если вы хотите проверить, является ли URL-адрес действительным, вы можете использовать filter_var() с FILTER_VALIDATE_URL фильтр.

filter_var($_POST['url'], FILTER_VALIDATE_URL)

Вы можете использовать следующий код:

Пример:

$url = "http://0gate.com"; // you can use instead - $_POST['url']
if (!preg_match("/^[http|https]*[:\/\/]*[A-Za-z0-9\-_]+\.([A-Za-z]{3,4})+([\.A-Za-z]{3})*$/i", $url)) {
  echo "The domain [not valid - false]";
}else{
  echo "The domain is [valid - true]";
}
Другие вопросы по тегам