1 class FieldInterfun extends Controller 2 { 3 /** 4 * [upload 上传文件] 5 * @param [type] $file [description] 6 * @param string $name [指定文件夹] 7 * @return [type] [description] 8 */ 9 public function upload($file,$name='img'){ 10 $data=['code'=>2,'msg'=>'','path'=>'']; 11 $movefile="upload/".$name; 12 // 移动到框架应用根目录/public/uploads/ 目录下 13 if($file && count($file)==1){ 14 $info = $file->move($movefile); 15 if($info){ 16 $data['code']=1; 17 $data['msg']='上传成功'; 18 $path='\\'.$movefile.DS.$info->getSaveName(); 19 $path = strtr($path,'\\','/'); 20 $data['path']=$path; 21 $ext=$info->getExtension(); 22 $getInfo=$info->getInfo(); 23 $data['file_type']=$getInfo['type']; 24 // $file_typeD=explode('/', $getInfo['type']); 25 // $data['file_type']=$file_typeD[0]=='application'?'file':$file_typeD[0]; 26 // if($ext=='zip') 27 // { 28 // $data['file_type']='zip'; 29 // } 30 // 31 $data['ext']=$ext; 32 }else{ 33 echo '<pre>'; 34 var_dump($file); 35 $data['msg']=$file->getError(); 36 } 37 }else{ 38 39 } 40 return $data; 41 } 42 43 44 /** 45 * [download 文件下载] 46 * @param [type] $file_url [description] 47 * @param string $new_name [description] 48 * @return [type] [description] 49 */ 50 public function download($file_url,$new_name=''){ 51 if(!isset($file_url)||trim($file_url)==''){ 52 echo '500'; 53 } 54 if(!file_exists($file_url)){ //检查文件是否存在 55 echo '404'; 56 } 57 $file_name=basename($file_url); 58 $file_type=explode('.',$file_url); 59 $file_type=$file_type[count($file_type)-1]; 60 $file_name=trim($new_name=='')?$file_name:urlencode($new_name); 61 $file_type=fopen($file_url,'r'); //打开文件 62 //输入文件标签 63 header("Content-type: application/octet-stream"); 64 header("Accept-Ranges: bytes"); 65 header("Accept-Length: ".filesize($file_url)); 66 header("Content-Disposition: attachment; filename=".$file_name); 67 //输出文件内容 68 echo fread($file_type,filesize($file_url)); 69 fclose($file_type); 70 } 71 72 73 74 }