urlencode但忽略某些字符

时间:2009-11-04 19:57:16

标签: php

可以在不转换#或%?

的情况下运行urlencode函数

4 个答案:

答案 0 :(得分:6)

你能不能这样做:

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

答案 1 :(得分:3)

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

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

答案 2 :(得分:1)

有关替代功能的urlencode的PHP文档的评论部分中有许多示例。您可以根据需要选择最合适的功能,并删除#和%的任何替换。

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

答案 3 :(得分:1)

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