簡體   English   中英

如何在本地主機上修剪我的家庭URL

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM