php导出excel报表

来源:互联网 发布:r语言与python 编辑:程序博客网 时间:2024/05/17 09:25

php导出excel报表方式网上有很多种,有的方法已经过时,有的看不懂,运行有错误,所以找资料时难免苦恼.在这里给大家分享一个简单易用的方法,致力于让大家一看就会,信心百倍.结合实例,利用PHPExcel库导出excel.

分为4个步骤:

1.取出数据库数据

<pre name="code" class="php"><pre name="code" class="php"><pre name="code" class="php">    //1.数据库取出数据    $conn=new mysqli('localhost','root','root','myDBPDO');    $result=$conn->query('select * from emp');    $emps=array();    while($row=$result->fetch_assoc()){        static $i=0;        $emps[$i] = $row;        $i++;    }    //设置内存占用    set_time_limit(0);    ini_set('memory_limit', '512M');



2.下载PHPExcel库


点击网址进入,即可下载:


下载完成解压,程序中引入PHPExcel库

<pre name="code" class="html">    //2.导入PHPExcel库    include './PHPExcel_1.8.0_doc/Classes/PHPExcel.php';    //创建对象    $objPHPExcel = new PHPExcel();    //设置属性    $objPHPExcel->getProperties()        ->setCreator("WOLF")        ->setLastModifiedBy("WOLF")        ->setTitle("Office 2007 XLSX Test Document")        ->setSubject("Office 2007 XLSX Test Document")        ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");


3.向表格填充数据

    //3.填充表格    $objActSheet = $objPHPExcel->setActiveSheetIndex(0); //填充表头    $objActSheet->setCellValue('A1','ID');    $objActSheet->setCellValue('B1','姓名');    $objActSheet->setCellValue('C1','年龄');    $objActSheet->setCellValue('D1','薪水');    //填充内容    for($i=0;$i<count($emps);$i++){        $key=$i+2;        $objActSheet->setCellValue('A'.$key,$emps[$i]['id']);        $objActSheet->setCellValue('B'.$key,$emps[$i]['name']);        $objActSheet->setCellValue('C'.$key,$emps[$i]['age']);        $objActSheet->setCellValue('D'.$key,$emps[$i]['salary']);    }
4.生成表格

<pre name="code" class="html">    //4.输出    $objPHPExcel->getActiveSheet()->setTitle('员工信息表');    $objPHPExcel->setActiveSheetIndex(0);    $day      = date("m-d");    $filename = $day.'员工信息表.xls';    ob_end_clean();//清除缓冲区,避免乱码    header("Content-Type: application/vnd.ms-excel; charset=utf-8");    header('Content-Disposition: attachment;filename='.$filename);    header('Cache-Control: max-age=0');    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel5');    $objWriter->save('php://output');    exit;

到此,我们就成功导出excel报表.

1 0
原创粉丝点击