php获取远程图片模拟post,file上传到指定服务器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php获取远程图片模拟post,file上传到指定服务器相关的知识,希望对你有一定的参考价值。

1.获取远程图片

/**

$path保存图片的地址

$url要获取的远程图片地址

**/

function getimg($path,$url){

$aext = explode(‘.‘, $url);
$ext = end($aext);

$name = $path.‘/‘. time() . ‘.‘ . $ext;
$source=file_get_contents($url);
file_put_contents($name,$source);
return $name;

}

2.上传图片

/**

$posturl上传图片的地址

$path本地图片所在的地址

**/

function postimg($posturl,$path){

$obj = new CurlFile($path);
$obj->setMimeType("application/octet-stream");//必须指定文件类型,否则会默认为application/octet-stream,二进制流文件</span>
$post[‘Filedata‘] = $obj;
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, false);
//启用时会发送一个常规的POST请求,类型为:application/x-www-form-urlencoded,就像表单提交的一样。
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch,CURLOPT_BINARYTRANSFER,true);
curl_setopt($ch, CURLOPT_POSTFIELDS,$post);
curl_setopt($ch, CURLOPT_URL, $posturl);//上传类
$info= curl_exec($ch);
curl_close($ch);
return $info;

}




















以上是关于php获取远程图片模拟post,file上传到指定服务器的主要内容,如果未能解决你的问题,请参考以下文章

在网站后台用户上传的图片如何获得图片路径存入数据库(mysql) (php解决) 急!!!

PHP上传图片的操作用POST方式传递到处理页面后是直接用$file得到上传的文件还是一定要用$POST['file']得到

html 表单上传图片

图片未通过 PHP 上传到 mySql

php上传文件(上传后显示图片)

PHP cURL抓取网上图片