使用PHPExcel实现数据批量导出为excel表格的方法(必看)

5年以前  |  阅读数:531 次  |  编程语言:PHP 

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

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

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


    <a href="./Process1.php" rel="external nofollow" >导出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导出数据至此完毕,对于使用PHPExcel导入到数据库可以参看使用PHPExcel实现数据批量上传到数据库

以上这篇使用PHPExcel实现数据批量导出为excel表格的方法(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例