下面直接上例子,是我自己写的一个简单的批量导出数据为excel的例子
前台页面
比较简单,就是一个超链接,跳转到处理页面,超链接也可以跟一些参数(看需求)!后台Process.PHP页面
//实例化
$objPHPExcel = new PHPExcel();
/右键属性所显示的信息/
$objPHPExcel->getProperties()->setCreator("zxf") //作者
->setLastModifiedBy("zxf") //最后一次保存者
->setTitle('数据EXCEL导出') //标题
->setSubject('数据EXCEL导出') //主题
->setDescription('导出数据') //描述
->setKeywords("excel") //标记
->setCategory("result file"); //类别
//设置当前的表格
$objPHPExcel->setActiveSheetIndex(0);
// 设置表格第一行显示内容
$objPHPExcel->getActiveSheet()
->setCellValue('A1','业主姓名')
->setCellValue('B1','密码')
->setCellValue('C1','手机号码')
->setCellValue('D1','地址')
//设置第一行为红色字体
->getStyle('A1:D1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED);
$key = 1;
/以下就是对处理Excel里的数据,横着取数据/
foreach($arr as $v){
//设置循环从第二行开始
$key++;
$objPHPExcel->getActiveSheet()
//Excel的第A列,name是你查出数组的键值字段,下面以此类推
->setCellValue('A'.$key,$v['name'])
->setCellValue('B'.$key,$v['pwd'])
->setCellValue('C'.$key,$v['phone'])
->setCellValue('D'.$key,$v['address']);
}
//设置当前的表格
$objPHPExcel->setActiveSheetIndex(0);
ob_end_clean(); //清除缓冲区,避免乱码
header('Content-Type: application/vnd.ms-excel'); //文件类型
header('Content-Disposition: attachment;filename="'.$name.'.xls"'); //文件名
header('Cache-Control: max-age=0');
header('Content-Type: text/html; charset=utf-8'); //编码
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel5'); //excel 2003
$objWriter->save('PHP://output');
exit;
}
/***调用**/
header("Content-type:text/html;charset=utf-8");
//链接数据库
$link = @MysqL_connect('localhost','root','') or die('连接数据库失败');
MysqL_select_db('test',$link);
MysqL_query('set names utf8');
//先获取数据
$sql = "select * from house";
$res = MysqL_query($sql);
$arr = array();
//把$res=>$arr,把结果集内容转移到一个数组中
while ($row = MysqL_fetch_assoc($res)){
$arr[] = $row;
}
//excel表格名
$name = "用户表";
//调用
expExcel($arr,$name)
使用PHPExcel导出数据至此完毕,对于使用PHPExcel导入到数据库可以参看使用PHPExcel实现数据批量上传到数据库
以上这篇使用PHPExcel实现数据批量导出为excel表格的方法(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。