描述:
批量上传图片
public function upload1(){
$img = [];
foreach($_FILES as $file){
$ret = $this->classUpload($file);
if($ret!=-1){
$img[] = $ret;
}
}
if($img){
echo implode(",", $img);
}else{
echo "";
}
exit;
}
上传类:classUpload
public function classUpload($file){
$upload_dir = "qrode_image/";
$uptypes=array(
'image/jpg',
'image/jpeg',
'image/png',
'image/pjpeg',
'image/gif',
'image/bmp',
'image/x-png'
);
$max_file_size=200000000; //上传文件大小限制, 单位BYTE
$fileName = time().rand(1000,9999).".jpg";
$filetype = $file["type"];
$filesize = $file["size"];
if(!in_array($filetype, $uptypes)){ // 文件类型判断
//echo "文件类型不符!";
return -1;
exit;
}
if($filesize > $max_file_size){ // 文件大小判断
//echo "文件太大!";
return -1;
exit;
}
$url = "qrode_image/";
$url = $url.$fileName;
if(move_uploaded_file($file["tmp_name"],$url)){
$image_config['image_library'] = 'gd2';
$image_config['create_thumb'] = TRUE;
$image_config['maintain_ratio'] = TRUE;
$image_config['width'] = 400;
$image_config['height'] = 400;
$files['full_path'] = realpath($url);
//生成缩略图 full_path:绝对路径
$image_config['source_image'] = $files['full_path'];
$this->load->library('image_lib', $image_config);
$this->image_lib->initialize($image_config); ///重要:解决批量上传压缩文件时出现只压缩一张情况
if($this->image_lib->resize()){
$this->image_lib->clear(); ///配合使用
//生成缩略图
$tmp = explode(".", $url);
$productThumb = "/".$tmp[0]."_thumb.".$tmp[1];
unlink($files['full_path']);
return $productThumb;
}
}