我在另一台服务器(Image)上有一张图片。但是当我使用file_get_contents()
功能获取此图片时,它会返回
未找到错误
并生成此Image。
file_put_contents(destination_path, file_get_contents(another_server_path));
请帮助我。如果还有其他方法可以获得这些图像。
答案 0 :(得分:1)
试试这个。
URL Special character有问题。然后你必须从url basename解码一些特殊字符。
$imgfile = 'http://www.lagrolla.com.au/image/m fr 137 group.jpg';
$destinationPath = '/path/to/folder/';
$filename = basename($imgpath);
$imgpath = str_replace($filename,'',$imgpath).rawurldecode($filename);
copy($imgfile,$destination_path.$filename);
答案 1 :(得分:0)
从另一台服务器下载副本文件的另一种方法是使用curl
:
$ch = curl_init('http://www.lagrolla.com.au/image/data/m%20fr%20137%20group.jpg');
$destinationPath = '/path/to/folder/filenameWithNoSpaces.jpg';
$fp = fopen($destinationPath, 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);
注意:在文件名中保存带空格的图像是不好的做法,因此您应该使用正确的名称保存此文件。