这是我的代码片段:
$url = $_SERVER["REQUEST_URI"]; // gives /test/test/ from http://example.org/test/test/
echo"$url";
trim ( $url ,'/' );
echo"$url";
我将它与.htaccess重写结合使用,我将从URL获取信息,并使用explode
为PHP用户生成页面。
我不希望.htaccess解释URL,这可能更好,但我更常见的PHP,我认为它更灵活。
我已经读过这个(基本上就是我想要的): Best way to remove trailing slashes in URLs with PHP
唯一的问题是trim
没有修剪前导斜杠。为什么?
但实际上它应该工作。用'/'
,"/"
或'\47'
替换'\x2F'
不会改变任何内容。
它既不能在线工作,也不能在localhost工作。
我做错了什么?
答案 0 :(得分:23)
trim
函数返回修剪过的字符串。它不会修改原件。你的第三行应该是:
$url = trim($url, '/');
答案 1 :(得分:3)
这可以在一行中完成......
echo trim($_SERVER['REQUEST_URI'], '/');
答案 2 :(得分:2)
你需要这样做:
$url = trim($url, '/');
你也应该这样做
echo $url;
速度更快。
答案 3 :(得分:1)
trim
不会修改原件。你需要做一些事情,比如:
$url = $_SERVER["REQUEST_URI"]; // gives /test/test/ from http://example.org/test/test/
echo"$url";
$url = trim ( $url ,'/' );
echo"$url";