2个Codeigniter文件批量上传控制器写法例子
例子一:
/**
*多文件上传
*
*@authorDream<dream@shanjing-inc.com>
*/
publicfunctionmultiple_uploads(){
//载入所需类库
$this->load->library('upload');
//配置上传参数
$upload_config=array(
'upload_path'=>'',
'allowed_types'=>'jpg|png|gif',
'max_size'=>'500',
'max_width'=>'1024',
'max_height'=>'768',
);
$this->upload->initialize($upload_config);
//循环处理上传文件
foreach($_FILESas$key=>$value){
if(!empty($key['name'])){
if($this->upload->do_upload($key)){
//上传成功
print_r($this->upload->data());
}else{
//上传失败
echo$this->upload->display_errors();
}
}
}
}
例子二:
functionupload(){
$config['upload_path']='./uploads/';
/*这里的uploads是相对于index.php的,也就是入口文件,这个千万不要弄错哦!
否则就会报错"Theuploadpathdoesnotappeartobevalid.";
*/
$config['allowed_types']='gif|jpg|png';
/*我试着去上传其它类型的文件,这里一定要注意顺序!
Aproblemwasencounteredwhileattemptingtomovetheuploadedfiletothefinaldestination.
这个错误一般是上传文件的文件名不能是中文名,这个很郁闷!还未解决,大家可以用其它方法,重新改一下文件名就可以解决了!
$config['allowed_types']='zip|gz|png|gif|jpg';(正确)
$config['allowed_types']='png|gif|jpg|zip|gz';(错误)
*/
$config['max_size']='1024';
$config['max_width']='1024';
$config['max_height']='768';
$config['file_name']=time();//文件名不使用原始名
$this->load->library('upload',$config);
if(!$this->upload->do_upload()){
echo$this->upload->display_errors();
}else{
$data['upload_data']=$this->upload->data();//文件的一些信息
$img=$data['upload_data']['file_name'];//取得文件名
echo$img."<br>";
foreach($data['upload_data']as$item=>$value){
echo$item.":".$value."<br>";
}
}
}