方法 一:使用正则表达式
<?php
function is_url($url){
$r = "/http[s]?:\/\/[\w.]+[\w\/]*[\w.]*\??[\w=&\+\%]*/is";
if(preg_match($r,$url)){
//return true;
echo '正确的 url 地址';
}else{
//return false;
echo '不是合法的 url 地址';
}
}
?>
方案二:使用内置函数 filter_var () 推荐
<?php
function is_url_2($url){
if (filter_var($url, FILTER_VALIDATE_URL) === false) {
return false;
}
// 补充协议和域名验证
$parsed = parse_url($sanitized);
return isset($parsed['scheme'], $parsed['host'])
&& in_array(strtolower($parsed['scheme']), ['http', 'https']);
}
?>