如何使用PHP中的curl复制远程图像(没有文件类型扩展名)

时间:2016-11-15 21:56:57

标签: php curl

我的代码可以正常使用具有文件扩展名的图像。

$ch = curl_init($remoteImageUrl);
$outputImagePath = dirname(__FILE__)."/saveto/thumbnail.jpg";

$fp = fopen($outputImagePath, 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);

但是当$ remoteImageUrl没有文件扩展名时,此代码不起作用。它创建一个0字节的图像。解决问题的方法是什么?

1 个答案:

答案 0 :(得分:0)

在处理无扩展名文件时尝试使用FOLLOWLOCATION,因为某些服务器可能会感到困惑。使用RETURNTRANSFER常量将图像内容检索为字符串。

curl_setopt($ch, CURLOPT_RETURNTRANSFER , 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);