PHP CURL 如何将一个网络图片上传至服务器

原创
2016-06-06 20:29:06 1233浏览

一般利用curl将本地文件上传至服务器:
$file = realpath('gif/1.gif'); //要上传的文件
$fields['f'] = '@'.$file;

$ch = curl_init();
curlsetopt($ch, CURLOPTURL, $target_url);
curlsetopt($ch, CURLOPTPOST, 1);
curlsetopt($ch, CURLOPTPOSTFIELDS, $fields);
curlsetopt($ch, CURLOPTRETURNTRANSFER, 1);

$result = curl_exec($ch);
curl_close($ch);
echo $result;

如果是网络上的一个文件呢(例如图片),该如何上传

回复内容:

一般利用curl将本地文件上传至服务器:
$file = realpath('gif/1.gif'); //要上传的文件
$fields['f'] = '@'.$file;

$ch = curl_init();
curlsetopt($ch, CURLOPTURL, $target_url);
curlsetopt($ch, CURLOPTPOST, 1);
curlsetopt($ch, CURLOPTPOSTFIELDS, $fields);
curlsetopt($ch, CURLOPTRETURNTRANSFER, 1);

$result = curl_exec($ch);
curl_close($ch);
echo $result;

如果是网络上的一个文件呢(例如图片),该如何上传

可以先使用file_get_contents()去获取这个图片,并保存到本地,然后就跟你将本地上传一样了。

第一步

获取远程图片的 stream ;

第二步

使用 CURL 将远程图片的 stream 上传到你的服务器;

那么,如何将文件的 stream 上传到服务器呢?

参考这篇文章: CRUL上传图片全攻略

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。