使用PHPExcel实现数据批量导出为excel表格

来源:互联网 发布:查看阿里云ecs带宽 编辑:程序博客网 时间:2024/06/06 18:09

首先需要下载PHPExecel类文件,帮助文档可以参考PHPExcel中文帮助手册|PHPExcel使用方法。

下面直接上例子,是我自己写的一个简单的批量导出数据为excel的例子

前台页面 比较简单,就是一个超链接,跳转到处理页面,超链接也可以跟一些参数(看需求)!

<a href="./Process1.php">导出excel表格</a>

后台Process.php页面

/*** 批量导出数据* @param $arr  从数据库查询出来,即要导出的数据*        $name  excel表歌名*/function expExcel($arr,$name){    require_once 'PHPExcel.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导出数据至此完毕

原贴地址:http://www.cnblogs.com/zxf100/p/6963640.html

原创粉丝点击