[英]How to trim my home url on the localhost
這是我在本地主機上獲取URL的方法:
$url = (!empty($_SERVER['HTTPS'])) ? "https://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] : "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
echo $url;
它返回: http:// localhost / CodeSensei / menu,因為我在菜單頁面上。
我該如何修剪? 我只想要“ http:// localhost / CodeSensei ”
我知道我可以這樣修剪
echo trim($url,"menu");
但是問題是,“菜單”是動態的,它不斷變化取決於頁面。 有什么方法可以修剪我的網址,以便它始終且僅在任何頁面中顯示“ http:// localhost / CodeSensei ”?
此功能可能對您有幫助。 它獲取一個url,並返回URL而不在last /
。
<?php
function getSubUrl($originUrl) {
$url = parse_url($originUrl);
$url['scheme'] .= '://';
$url['path'] = dirname($url['path']);
return implode($url);
}
echo getSubUrl('http://localhost/CodeSensei/menu/123') . PHP_EOL;
// http://localhost/CodeSensei/menu
echo getSubUrl('http://localhost/CodeSensei/menu') . PHP_EOL;
// http://localhost/CodeSensei
echo getSubUrl('http://localhost/CodeSensei') . PHP_EOL;
// http://localhost/
echo getSubUrl('http://localhost/') . PHP_EOL;
// http://localhost/
echo getSubUrl('http://localhost') . PHP_EOL;
// http://localhost
有很多方法可以實現這一目標。 您可以玩弄不同的字符串操縱器,例如explode()等。
這是使用explode()
的解決方案
$variable = "http://localhost/CodeSensei/menu";
$variable = (explode("/",$variable));
$url='';
for($i=2;$i<count($variable)-1;$i++)
{
$url .= "/".$variable[$i];
}
$final_url = "http:/".$url;
echo $final_url;
您的輸出
http://localhost/CodeSensei
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.