可能重复:
从PHP URL保存图像
我有一个图像作为来自第三方网站拇指网站的网址链接(IE http://images.websnapr.com/?size=size&key=Y64Q44QLt12u&url=http://google.com)我想要做的是运行一个脚本,它使用php获取图像并将其保存在我的服务器上的目录中.这该怎么做?我会使用文件写入吗?
Tim*_*per 53
无需像其他人建议的那样创建GD资源.
$input = 'http://images.websnapr.com/?size=size&key=Y64Q44QLt12u&url=http://google.com';
$output = 'google.com.jpg';
file_put_contents($output, file_get_contents($input));
Run Code Online (Sandbox Code Playgroud)
注意:此解决方案仅在您设置为允许fopen访问URL时才有效.如果上述解决方案不起作用,则必须使用cURL.
Mar*_*lor 22
注意:如果可能,您应该使用接受的答案.它比我的好.
使用GD库非常容易.
它通常内置,你可能有它(用于phpinfo()检查)
$image = imagecreatefromjpeg("http://images.websnapr.com/?size=size&key=Y64Q44QLt12u&url=http://google.com");
imagejpeg($image, "folder/file.jpg");
Run Code Online (Sandbox Code Playgroud)
对于大多数情况,上述答案更好(更快),但使用GD,您也可以以某种形式修改它(例如裁剪).
$image = imagecreatefromjpeg("http://images.websnapr.com/?size=size&key=Y64Q44QLt12u&url=http://google.com");
imagecopy($image, $image, 0, 140, 0, 0, imagesx($image), imagesy($image));
imagejpeg($image, "folder/file.jpg");
Run Code Online (Sandbox Code Playgroud)
这仅适用allow_url_fopen是true (这是默认情况下)