【问题标题】:urlencode but ignore certain charsurlencode 但忽略某些字符
【发布时间】:2009-11-04 19:57:15
【问题描述】:

可以在不转换#或%的情况下运行urlencode函数吗?

【问题讨论】:

    标签: php


    【解决方案1】:

    你能不能只做:

    $str = urlencode($str);
    $str = str_replace("%23", "#", $str);
    $str = str_replace("%25", "%", $str);
    

    【讨论】:

      【解决方案2】:

      据我所知,urlencode 函数本身是不可能的,但您可以对编码结果进行简单的字符串替换来实现:

      function my_urlencode($input){
         $input=urlencode($input); 
         return str_replace(array("%25","%23"),array("%","#"),$input);
      }
      

      【讨论】:

        【解决方案3】:

        在 urlencode 的 PHP 文档的 cmets 部分中有许多示例,用于替代函数。您可以简单地采用最适合您需要的函数,并删除 # 和 % 的任何替换。

        http://php.net/manual/en/function.urlencode.php

        【讨论】:

          【解决方案4】:

          我不这么认为,但我想您可以将编码字符串中的等效代码替换为 # 和 %。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-02-27
            • 1970-01-01
            • 2021-11-19
            相关资源
            最近更新 更多