如果你对该文章中的内容有疑问/不解,可以点击此处链接提问
要注明问题和此文章链接地址 点击此处跳转
方法如下
public function import_member(){ $fileName = $_FILES['file']['name'];//文件名 $tmpName = $_FILES['file']['tmp_name'];//临时存放的目录 $fileError = $_FILES['file']['error']; $fileType = $_FILES['file']['type']; $fileSize = $_FILES['file']['size']; if($fileError>0){ switch($fileError){ case 1: echo "上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值"; break; case 2: echo "上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值"; break; case 3: echo "文件只有部分被上传"; break; case 4: echo "没有文件被上传"; break; case 6: echo "找不到临时文件夹。PHP 4.3.10 和 PHP 5.0.3 引进"; break; case 7: echo "文件写入失败。PHP 5.1.0 引进"; break; } } $ext = pathinfo($fileName,PATHINFO_EXTENSION);//类型 $saveName = 'member_'.date('Ymd').mt_rand(1,100).'.'.$ext; //生成保存路径 $uploads = "./uploads/"; $path = rtrim($uploads,'/')."/".date('Y/m/d/'); if(!file_exists($path)){ mkdir($path,0777,true); } $saveFile = $path .$saveName; if(move_uploaded_file($tmpName,$saveFile)){ // echo "上传成功"; $ret['message']= $saveFile; }else{ $this->jserroor("上传失败");die; } require_once '/include/ext/PHPExcel.php'; require_once '/include/ext/PHPExcel/IOFactory.php'; require_once '/include/ext/PHPExcel/Reader/Excel5.php'; //以上三步加载phpExcel的类 $objReader = PHPExcel_IOFactory::createReader('Excel5');//use excel2007 for 2007 format $filename=$saveFile;//指定excel文件从上传中取出 $objPHPExcel = $objReader->load($filename); //$filename可以是上传的文件,或者是指定的文件 $sheet = $objPHPExcel->getSheet(0); $highestRow = $sheet->getHighestRow(); // 取得总行数 $highestColumn = $sheet->getHighestColumn(); // 取得总列数 $k = 0; //循环读取excel文件,读取一条,保存一条 for($j=2;$j<=$highestRow;$j++) {//j=2是因为第一行表为提示,从第二行开始取 { $a = $objPHPExcel->getActiveSheet()->getCell("A".$j)->getValue();//获取A列的值 $b = $objPHPExcel->getActiveSheet()->getCell("B".$j)->getValue();//获取B列的值 $c = $objPHPExcel->getActiveSheet()->getCell("C".$j)->getValue();//获取C列的值 $d = $objPHPExcel->getActiveSheet()->getCell("D".$j)->getValue();//获取C列的值 $data[$j]['uid'] = $a; $data[$j]['username'] = $b; $data[$j]['tel'] = $c; $data[$j]['idcode'] = $d; $data[$j]['password'] = md5(substr($data[$j]['idcode'],-6)); $data[$j]['createtime'] = time(); //判断是否存在 $res_if = $this->model->table('member')->where("tel=".$data[$j]['tel'])->find(); if(!$res_if){ //执行添加 $res_add = $this->model->table('member')->data($data[$j])->insert(); if(!$res_add){ $data_log['msg'] = 'user error'; $data_log['tel'] = $data[$j]['tel']; $data_log['tel'] = $data[$j]['tel']; logOutput($data_log); } } } // echo $_GET['refreshUrl'];die; $this->jssuccess('已导入!'); }
必要的文件引用: