php – 如何将域名后的所有内容都变成字符串

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 如何将域名后的所有内容都变成字符串脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我的目标是将域名后的所有内容都放到字符串中.如在mysITe.COM/page/page2中将导致字符串“page / page2”.我可以做,但是当它开始给我带来问题时,例如,网站在子文件夹而不是root中,那么网站所在的文件夹也将包含在字符串中,如果我没有使用Mod_rewrite获得漂亮的链接,它还会将index.PHP添加到字符串中.

所以,我需要一两个技巧来让脚本了解该网站是否在mysite.com/sitefolder/page/page2这样的子文件夹中,并且它仍然会产生一个字符串

page/page2

如果网站没有使用mod_rewrite且url是mysite.com/sitefolder/index.PHP/page/page2,它仍会产生一个字符串

page/page2

请记住,我在配置文件中定义了URL和USE_MOD_REWRITE,因此不需要魔.我只是不知道如何获得该字符串.我知道我可以用$_SERVER [‘REQUEST_URI’]来获取字符串,但是index.PHP仍然会在其中.如果我的解释不够好,我很抱歉,但所有的帮助都表示赞赏.

>通过解析请求uri获取路径
>从字符串末尾删除最终的脚本名称(例如index.PHP)
> rtrim任何尾随斜杠
$request = parse_url($_SERVER['REQUEST_URI']);
$path = $request["path"];
$result = rtrim(str_replace(basename($_SERVER['SCRIPT_NAME']),'',$path),'/');

编辑

$request = parse_url($_SERVER['REQUEST_URI']);
$path = $request["path"];

$result = trim(str_replace(basename($_SERVER['SCRIPT_NAME']),'/');

$result = explode('/',$result);
$max_level = 2;
while ($max_level < count($result)) {
    unset($result[0]);
}
$result = '/'.implode('/',$result);

脚本宝典总结

以上是脚本宝典为你收集整理的php – 如何将域名后的所有内容都变成字符串全部内容,希望文章能够帮你解决php – 如何将域名后的所有内容都变成字符串所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。