有一个文件,其名称包含空格。 你好,我很好.zip
我正在尝试使用curl读取文件。
所以,网址应该是这样的:
http://domain.com/hello I am good.zip
但是,curl似乎无法读取那种文件名。 因为网址格式不正确。
那么,有没有其他方法可以使用curl读取文件? 还是我不知道的一些选择?
服务器lang是php。 我的卷曲代码如下:
$ch = curl_init();
$timeout = 5;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
$data = curl_exec($ch);
curl_close($ch);
return $data;
答案 0 :(得分:9)
$url = str_replace(" ","%20",$url); // to properly format the url
$ch = curl_init();
$timeout = 5;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
$data = curl_exec($ch);
curl_close($ch);
return $data;
答案 1 :(得分:2)
哪里有space
使用%20
,有希望这样做。
所以它会变成:
http://domain.com/hello%20I%20am%20good.zip
这有望成功。
希望这有帮助。
答案 2 :(得分:2)
尝试使用urlencode('http://domain.com/hello I am good.zip');
或http://domain.com/'.urlencode('hello I am good.zip')
;