这里实现的PHP导入导出excel功能用到的是开源PHPExcel,执行下面的操作之前请先下载该类库文件,官方网站:http://www.codeplex.com/PHPExcel,官网案例代码很多,导出pdf什么的都有,这里主要介绍PHP导入导出excel的功能,导出excel文件是office2007格式,同时兼容2003。
php导入excel
导入的excel文件的数据格式,截图如下:
下面是将该excel文件的数据导入到数据库的具体代码:
$objReader=PHPExcel_IOFactory::createReader(\'Excel5\');//use excel2007 for 2007 format
$objPHPExcel=$objReader->load($file_url);//$file_url即Excel文件的路径
$sheet=$objPHPExcel->getSheet(0);//获取第一个工作表
$highestRow=$sheet->getHighestRow();//取得总行数
$highestColumn=$sheet->getHighestColumn(); //取得总列数
//循环读取excel文件,读取一条,插入一条
for($j=2;$j<=$highestRow;$j++){//从第一行开始读取数据
$str=\'\';
for($k=\'A\';$k<=$highestColumn;$k++){ //从A列读取数据
//这种方法简单,但有不妥,以\'\\\\\'合并为数组,再分割\\\\为字段值插入到数据库,实测在excel中,如果某单元格的值包含了\\\\导入的数据会为空
$str.=$objPHPExcel->getActiveSheet()->getCell(\"$k$j\")->getValue().\'\\\\\';//读取单元格
}
//explode:函数把字符串分割为数组。
$strs=explode(\"\\\\\",$str);
$sql=\"INSERT INTO `\".TB_PREFIX.\"business`(`username`,`password`,`company`,`prov`,`address`,`btime`,`phone`,`email`,`name`) VALUES (
\'{$strs[0]}\',
\'{$strs[1]}\',
\'{$strs[2]}\',
\'{$strs[3]}\',
\'{$strs[4]}\',
\'{$strs[5]}\',
\'{$strs[6]}\',
\'{$strs[7]}\',
\'{$strs[8]}\')\";
$db->query($sql);//这里执行的是插入数据库操作
}
unlink($file_url); //删除excel文件
?>
本文地址:https://www.stayed.cn/item/8434
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我