1

file_get_contents() を使用してリモート ファイルを読み取ります。通常の文字付き URL では問題なく動作しますが、クライアントには次のようなファイルがいくつかあります。

http://www.site.org/?m=sp_view_doc&file=publicpolicy/shared%20documents/therapeutic%20discovery%20project%20credit%20general%20guide.pdf

これをソースコードで示します

http://www.site.org/?m=sp_view_doc&file=publicpolicy/shared%20documents/therapeutic%20discovery%20project%20credit%20general%20guide.pdf

urldecode() を試しましたが、うまくいきませんでした。この問題を回避するにはどうすればよいですか?

4

3 に答える 3

2

シンプルなstr_replace("&","&",$url)だけでうまくいきます。

%20はスペースを表すだけなので、URL 内ではまったく問題ありません。そのため、心配する必要はありません。

于 2012-08-28T20:30:40.393 に答える
0

rawurldecodeを使用すると、%20 が urldecode のようにプラス記号ではなくスペースに変換されます。

于 2012-08-28T20:32:26.883 に答える
0

試しましたhtml_entity_decode(urldecode($string))か?

于 2012-08-28T20:28:59.333 に答える