Maison > Article > développement back-end > PHPExcel 多工作表 导入
//参数初始化 $filePath = ''; if ($_FILES["file"]["error"] > 0) { returnJSON(ERROR_INVALID, $_FILES["file"]["error"]); } $filePath = $_FILES["file"]["tmp_name"]; //建立reader对象 $this->load->library('PHPExcel'); $PHPReader = new PHPExcel_Reader_Excel2007(); if (!$PHPReader->canRead($filePath)) {//如果不是excel2007,尝试使用excel5 $PHPReader = new PHPExcel_Reader_Excel5(); if (!$PHPReader->canRead($filePath)) { returnJSON(ERROR_INVALID, 'excel not existing'); } } //建立excel对象,此时你即可以通过excel对象读取文件,也可以通过它写入文件 $PHPExcel = $PHPReader->load($filePath); //导入第一个工作表的数据 $this->db->truncate('dzg_card_info'); //清理表 $currentSheet = $PHPExcel->getSheet(0); //读取excel文件中的第一个工作表 $columnCount = $currentSheet->getHighestColumn(); //取得最大的列号 $rowCount = $currentSheet->getHighestRow(); //取得一共有多少行 for ($rowIndex = 2; $rowIndex <= $rowCount; $rowIndex++) { $name = iconv('utf-8', 'gbk', $currentSheet->getCell('B' . $rowIndex)->getValue()); $skill = iconv('utf-8', 'gbk', $currentSheet->getCell('C' . $rowIndex)->getValue()); $create_time = iconv('utf-8', 'gbk', $currentSheet->getCell('D' . $rowIndex)->getValue()); $this->admin_model->insertCardInfo($name, $skill, $create_time); } //导入第二个工作表 $this->db->truncate('dzg_card_message'); //清理表 $currentSheet = $PHPExcel->getSheet(1); //读取excel文件中的第一个工作表 $columnCount = $currentSheet->getHighestColumn(); //取得最大的列号 $rowCount = $currentSheet->getHighestRow(); //取得一共有多少行 for ($rowIndex = 2; $rowIndex <= $rowCount; $rowIndex++) { $uid = iconv('utf-8', 'gbk', $currentSheet->getCell('B' . $rowIndex)->getValue()); $message = iconv('utf-8', 'gbk', $currentSheet->getCell('C' . $rowIndex)->getValue()); $this->admin_model->insertCardMsg($uid, $message); }
<form action="index.php?c=admin&m=importExcel&d=admin" method="post" enctype="multipart/form-data"> <label for="file">导入excel:</label> <input type="file" name="file" id="file" /> <input type="submit" name="submit" value="提交" /> </form>