How To Validate URL In PHP With Regex

Websolutionstuff | Apr-13-2021 | Categories : Laravel PHP

Hello Guys,

In this tutorial we will see how to validate URL in PHP with regex. also you can implement in laravel or php. here we will give you example of validate url with regular expression and without regular expression so you can both way to implement validate url in php or laravel.

When a URL is submitted from a form input by the user, it is very important to check this URL is valid or not before taking any action on it. So here we will provide the simple PHP code to validate URL in PHP. 

PHP provide filter_var() inbuilt function with FILTER_VALIDATE_URL filter. So, we can easily validates a URL in PHP using javascript regex or regular expression .

 

Example : PHP FILTER_VALIDATE_URL Filter

 

<!DOCTYPE html>
<html>
<body>

<?php
// Variable to check
$url = "https://www.websolutionstuff.com";

// Validate url
if (filter_var($url, FILTER_VALIDATE_URL)) {
  echo("Enter URL is a valid URL");
} else {
  echo("Enter URL is not a valid URL");
}
?>

</body>
</html>

 

 

Possible  flags of validate URL in PHP 

FILTER_FLAG_HOST_REQUIRED - URL must include host name (like https://www.websolutionstuff.com)
FILTER_FLAG_PATH_REQUIRED - URL must have a path after the domain name (like www.websolutionstuff.com/post)

 

Example : Validate URL With Regex

Above function is simply check URL vaidation. If you want to check or validate URL manually or more securely then you can use regular expression. So here I will give example of code.

 

<?php 

$regex = "((https?|ftp)\:\/\/)?";
$regex .= "([a-z0-9+!*(),;?&=\$_.-]+(\:[a-z0-9+!*(),;?&=\$_.-]+)?@)?";
$regex .= "([a-z0-9-.]*)\.([a-z]{2,3})";
$regex .= "(\:[0-9]{2,5})?";
$regex .= "(\/([a-z0-9+\$_-]\.?)+)*\/?";
$regex .= "(\?[a-z+&\$_.-][a-z0-9;:@&%=+\/\$_.-]*)?";
$regex .= "(#[a-z_.-][a-z0-9+\$_.-]*)?";

$url = 'https://websolutionstuff.com/';

if (preg_match("/^$regex$/i", $url)) {
   echo('Enter URL is a valid URL');
}

 

Recommended Post
Featured Post
Laravel 11 jQuery UI Ajax Autocomplete Search
Laravel 11 jQuery UI Ajax Auto...

Hello, laravel web developers! In this article, we'll see how to create an Ajax autocomplete search in laravel 11. h...

Read More

Jun-19-2024

How to Filter Datatable using Dropdown in Laravel 10
How to Filter Datatable using...

Hello developers! 👋 Ever found yourself dealing with a DataTable in Laravel and wished for a nifty way to filter th...

Read More

Feb-07-2024

Laravel 9 Socialite Login with Google Account
Laravel 9 Socialite Login with...

In this article, we will see laravel 9 socialite login with a google account. This post gives you an example of a larave...

Read More

Apr-15-2022

Laravel 9 Group Column Chart Using Highcharts
Laravel 9 Group Column Chart U...

In the world of web development, Laravel 9 is a user-friendly PHP framework. When combined with Highcharts, a top JavaSc...

Read More

Jan-02-2023