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']得到