>  기사  >  백엔드 개발  >  php验证URL是否合法的函数_PHP教程

php验证URL是否合法的函数_PHP教程

WBOY
WBOY원래의
2016-07-13 10:13:021302검색

php验证URL是否合法的函数

   验证URL有两种一种是利用正则表达式来验证URL是不是合适url规则了,另一个是利用函数来访问指定url看看是否可正常访问了,如果能正常访问自然就是合法的url地址了。

  例子1

代码如下  

function isValidUrl($url) {

$patern = '/^http[s]?:\/\/'.
'(([0-9]{1,3}\.){3}[0-9]{1,3}'. // IP形式的URL- 199.194.52.184
'|'. // 允许IP和DOMAIN(域名)
'([0-9a-z_!~*\'()-]+\.)*'. // 三级域验证- www.
'([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\.'. // 二级域验证
'[a-z]{2,6})'. // 顶级域验证.com or .museum
'(:[0-9]{1,4})?'. // 端口- :80
'((\/\?)|'. // 如果含有文件对文件部分进行校验
'(\/[0-9a-zA-Z_!~\*\'\(\)\.;\?:@&=\+\$,%#-\/]*)?)$/';

if(!preg_match($patern, $url)) {
die( '您输入的URL格式有问题,请检查!');
}
}

  例子2

  上面的例子只是验证url是不是正常的不代表是否可以访问了,我们可以使用如curl函数进行方法

代码如下  

$url = "http://www.45it.net ";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_NOBODY, true);
$result = curl_exec($curl);
if ($result !== false)
{
$statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ($statusCode == 404)
{
echo "URL Not Exists"
}
else
{
echo "URL Exists";
}
}
else
{
echo "URL not Exists";
}

  除了这个函数还可以使用php的很多函数如 file、file_get_contents()、fopen函数来进行检测了。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/918725.htmlTechArticlephp验证URL是否合法的函数 验证URL有两种一种是利用正则表达式来验证URL是不是合适url规则了,另一个是利用函数来访问指定url看看是否可正...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.