今天做个项目,需要获取指定URL的完整路径,但是不需要URL中的文件名,
查阅了相关函数,PHP提供有一个parse_url()函数,使用过后获取到的还是带文件名。
网站还有个 正则表达式版本的,一样不行。姑且就自己写一个了。
水平有限,实现功能为主。
以下四行正则表达式版本无效
$search = '~^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?~i'; $url = trim($url); preg_match_all($search, $url ,$rr); print_r($rr);
以下为本人自己实现的方法,简单有效。
function getUrlPath($url){
$urls=explode("/",$url);
$url="";
$urls_c=count($urls)-1;
for($i=0;$i<$urls_c;$i++)
{
$url.=$urls[$i]."/";
}
return $url;
}