cURL 请求 URL 中包含空格的 URL..该怎么办[重复]

问题描述 投票:0回答:6

所以我正在尝试卷曲此 URL:

http://images.fastcompany.com/upload/Screen shot 2011-04-28 at 8.13.21 PM.png

URL 编码如下:

http%3A%2F%2Fimages.fastcompany.com%2Fupload%2FScreen+shot+2011-04-28+at+8.13.21+PM.png

但是,curl 显然需要将其解码为正确的 URL。

如何解决这个问题?一旦 cURL 到达任何空格,就会删除字符串的其余部分...:(

我应该提到我不能用双引号将 URL 括起来,因为它是发布的变量。

编辑:哈哈哈哈哈哈哇wwwwww脑残..谢谢大家:P

php parsing curl communication
6个回答
47
投票

只需使用 str_replace 即可。

echo str_replace ( ' ', '%20', 'http://images.fastcompany.com/upload/Screen shot 2011-04-28 at 8.13.21 PM.png' );

28
投票

也许尝试用

%20
替换空格?


10
投票

我用:

$link = trim($link);
$link = str_replace ( ' ', '%20', $link);

3
投票

对我来说,只需在 "" 之间添加空格即可。

示例

curl --upload-file "001- name - lastName.pdf" https://transfer.sh/ernesto

注意“001-姓名-姓氏.pdf”中使用“”


2
投票

使用

str_replace();
功能。将您的
" "
替换为
"%20"


0
投票

在Windows,您可以使用notepad++

  1. 在文件中写入文本并用notepad++打开。
  2. 在文本中选择一个空字符串,然后单击搜索。
  3. 将出现搜索框,现在单击替换选项卡。
  4. 在“搜索模式”选项中选择“扩展”复选框。
  5. 点击替换 enter image description here
© www.soinside.com 2019 - 2024. All rights reserved.