删除URL字符串中的“%”编码

时间:2009-11-02 06:02:21

标签: php url decoding

我正在尝试使用window.open打开一个页面,但它无效。显示的路径类似于xyz/a%20b%20c%20.pdf,但它应该是xyz/abc.pdf。如果我手动删除%20,它可以工作,如何使用PHP删除这些字符?

3 个答案:

答案 0 :(得分:7)

使用urldecode

  

(PHP 4,PHP 5)   urldecode - 解码URL编码的字符串

     

<强>描述

     

string urldecode(string $str)   解码给定字符串中的任何%##编码。加号('+')被解码为空格字符。

实施例

echo urldecode('xyz/a%20b%20c%20.pdf');

答案 1 :(得分:0)

这称为URL编码。你需要解码字符串。如果您使用的是jQuery,则应该查看URL Encode插件。

答案 2 :(得分:0)

你需要urldecode(如上所述)。

但是,你说你可以删除%20,它会起作用。我会说你需要它们,它们会解码到空间。使用此在线网址解码器查看:

http://www.convertstring.com/EncodeDecode/UrlDecode

它解码为:

xyz / a b c .pdf

不是

XYZ / abc.pdf