我是PHP的初学者,所以请记住这一点。
我试图从当前URL获取JUST路径,该路径是可变的。例如,如果当前网址为http://example.com/blog/2014/blogpost.html
,那么我想获得/blog/2014
或非常类似的内容。
这是我到目前为止的PHP代码:
$full_url = $_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
$path_info = parse_url($full_url,PHP_URL_PATH);
echo $path_info;
然而,这不起作用,我认为谷歌似乎不是一个合适的解决方案。
有没有人有任何指示?
提前致谢!
答案 0 :(得分:3)
您可以使用strrpos
获取/
的最后一个索引,并在此之前提取URI的一部分:
$req_uri = $_SERVER['REQUEST_URI'];
$path = substr($req_uri,0,strrpos($req_uri,'/'));
这将为您提供您想要的(/blog/2014
)
答案 1 :(得分:1)
以下内容应该从您的示例中提供“/ blog / 2014 /”:
$path_info = substr($_SERVER['PHP_SELF'], 0, strpos($_SERVER['PHP_SELF'], $_SERVER['SCRIPT_FILENAME']));
答案 2 :(得分:0)
你可以这样做:
$url = "http://example.com/blog/2014/blogpost.html" ;
$parts = explode('/' , $url );
// then use any part of $parts by using $parts[i]