微信上传永久素材接口到底怎么用。我用的是thinkphp5.0.2框架;新浪SAE服务器,STorage储存。php5.6版本。实在解决不了啊。
public function img_upload(){
$stor = new Storage();//实例化对象
$weixin = new \weixin\Wxapi();
$token = $weixin->access_token;
//获取上传文件名数组
$filename = explode(".",$_FILES['filename']['name']);//
$filename1 = $_FILES['filename']['name'];
$filetype = $_FILES['filename']['type'];//获取上传文件类型
$filesize = $_FILES['filename']['size'];//获取上传文件大小
$tem_name = $_FILES['filename']['tmp_name'];
if ($_FILES['filename']['error']>0) {
echo "上传文件失败,错误码:".$_FILES['filename']['error'];
}
if ((($_FILES['filename']['type']=="image/gif")||($_FILES['filename']['type']=="image/jpeg")||($_FILES['filename']['type']=="image/pjpeg")||($_FILES['filename']['type']=="image/png"))&&($_FILES['filename']['size'])<2000000) {
//将上传文件名称和类型分离为数组
$filename[0] = date("ymdHis");
$uploadimgname = implode(".",$filename);//保存的文件名
//获取的上传到服务器的临时文件
$img_data = file_get_contents($_FILES['filename']['tmp_name']);
$is_upload =$stor->putObject($img_data,"testdemo",$uploadimgname);
if($is_upload == true){
$url = $stor->getUrl("testdemo",$uploadimgname);
$img_url = "https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=".$token."&type=image";
$cfile = curl_file_create($url,$filetype,"IMG".date("YmdHis"));
$data = array("media" => $cfile);
$result = $weixin->http_request($img_url,$data);
var_dump($result);
}
}else{
echo "上传文件不是gif、jpg、png格式或者文件大小超过2M";
}
} 最佳答案