【问题标题】:trim slashes from Request_Uri从 Request_Uri 修剪斜线
【发布时间】:2011-07-05 08:19:03
【问题描述】:

这是我的代码 sn-p 开头:

$url = $_SERVER["REQUEST_URI"]; // gives /test/test/ from http://example.org/test/test/
echo"$url"; 
trim ( $url ,'/' );
echo"$url";

我将它与 .htaccess 重写结合使用,我将从 URL 获取信息并使用 PHP 使用 explode 为用户生成页面。 我不希望 .htaccess 解释 URL,这可能更好,但我更常用 PHP,我认为它更灵活。

我已经读过这个(这基本上是我想要的): Best way to remove trailing slashes in URLs with PHP

唯一的问题是,trim 不会修剪前导斜线。为什么? 但实际上它应该工作。将'/' 替换为"/"'\47''\x2F' 不会改变任何内容。 它既不能在线工作,也不能在本地主机上工作。 我做错了什么?

【问题讨论】:

    标签: php url uri trim


    【解决方案1】:

    trim 函数返回修剪后的字符串。它不会修改原件。您的第三行应该是:

    $url = trim($url, '/');
    

    【讨论】:

      【解决方案2】:

      trim 不修改原文。您需要执行以下操作:

      $url = $_SERVER["REQUEST_URI"]; // gives /test/test/ from http://example.org/test/test/
      echo"$url"; 
      $url = trim ( $url ,'/' );
      echo"$url";
      

      【讨论】:

        【解决方案3】:

        你需要做的:

        $url = trim($url, '/');
        

        你也应该这样做

        echo $url;
        

        速度更快。

        【讨论】:

          【解决方案4】:

          这可以在一行中完成...

          echo trim($_SERVER['REQUEST_URI'], '/');
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2015-12-13
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-05-21
            相关资源
            最近更新 更多