PHP检测URL格式是否正确域名地址是否有效【转】


PHP 检测 URL 格式是否正确、域名地址是否有效:

   if (filter_var($url, FILTER_VALIDATE_URL) === FALSE) {
   	return 'url格式不正确';
   }

上面的代码只会检测字符格式是否正确,如果我们要进一步确定检测域名是否有效则可以用下面的代码:

if (!checkdnsrr($domain, 'ANY')) {
	return '域名无效!';
}

改函数会检测指定的域名是有 dns 记录,因此是校验一个域名最有效的方法。如果域名格式有效,dns 校验的速度非常快的。反之如果域名格式不正确,会耗时几秒时间返回错误。因此,我们可以将上面两个函数结合起来用,首先检测域名的 url 的格式是够有效,然后将 url 中的域名解析出来(使用 parse_url 函数),再检测 dns 是否有效,最终可快速确定域名是否有效。
 
当然也可以在前端使用 js 或者HTML5的 url 字段进行初步过滤。但对于数据要求比较严格的场景,后端的校验还是必须的。

文章转自:https://www.22vd.com/56510.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM