1

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

4

3 回答 3

7

使用urldecode

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

描述

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

例子

echo urldecode('xyz/a%20b%20c%20.pdf');
于 2009-11-02T06:05:10.833 回答
0

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

于 2009-11-02T06:05:59.240 回答
0

您需要进行 urldecode(如上所述)。

但是,您说您可以删除 %20 并且它会起作用。我会说你需要它们,它们会解码为空格。使用此在线 url 解码器进行检查:

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

它解码为:

xyz/abc .pdf

不是

xyz/abc.pdf

于 2011-05-25T12:57:04.570 回答