phpExcel导出操作要点记录

16 篇文章 0 订阅

1.下载phpExcel最新版 http://phpexcel.codeplex.com/

2.将Classes文件夹里的文件放于TP框架的\ThinkPHP\Library\Org\Util 目录下
在代码中用以下方式导入phpExcel
import(“Org.Util.PHPExcel”);

3.导出数据到excel表
(1)创建phpExcel对象,相当于新建一个Excel文件,里面生成了一张sheet工作表并默认为活动表

 $objPHPExcel=new \PHPExcel(); 

(2)创建新的工作表

 $objPHPExcel->createSheet();

(3)设置某个工作表为活动表

 $objPHPExcel->setActiveSheetIndex($index);//index是表序号,从0开始

(4).设置活动表标题

$objPHPExcel->getActiveSheet()->setTitle('test页');

(5).设置单元格样式

  $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20); //A列宽度
  $objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(20); //首行高度

引用样式数组

 $first_styleArray = array(
            'font' => array(
                'bold' => true,
                'size' => '11px',
            ),
            'alignment' => array(
                'horizontal' => \PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
            ),
            'borders' => array(
                'allborders' => array(
                    'style' => \PHPExcel_Style_Border::BORDER_THIN,
                    'color' => array('argb' => '0D0D0D'),
                ),
            ),       
        );
        $objPHPExcel->getActiveSheet()->getStyle('A1:H1')->applyFromArray($first_styleArray);

(6).设置单元格边框样式

 $border_styleArray = array(
            'borders' => array(
                'allborders' => array(
                    'style' => \PHPExcel_Style_Border::BORDER_THIN,
                    'color' => array('argb' => '0D0D0D'),
                )
            ),
        );
$objPHPExcel->getActiveSheet()->getStyle('A1:H100')->applyFromArray($border_styleArray);   

(7).设置单元格格式为文本格式

$objPHPExcel->getActiveSheet()->getStyle('A1:H100')->getNumberFormat()->setFormatCode(\PHPExcel_Style_NumberFormat::FORMAT_TEXT);

(8).单元格填充数值

  $objPHPExcel->getActiveSheet()->setCellValue('A2', '小明');

4.导出excel文件到浏览器
(1)生成xls文件

 $objWriter=\PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel5');//生成excel文件    

(2)设置浏览器输出头部参数

private function browser_export($type,$filename){
        if($type=="Excel5"){
                header('Content-Type: application/vnd.ms-excel');//告诉浏览器将要输出excel03文件
        }else{               
                header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');//告诉浏览器数据excel07文件
        }
        header('Content-Disposition: attachment;filename="'.$filename.'"');//告诉浏览器将输出文件的名称
        header('Cache-Control: max-age=0');//禁止缓存
    }

(3)浏览器导出xls文件

  $filename ='test.xls';
  $this->browser_export('Excel5',$filename);//输出到浏览器
  $objWriter->save("php://output");
要使用PHPExcel导出MySQL数据到Excel,首先需要安装并引入PHPExcel库。 步骤如下: 1. 创建一个新的PHP文件,并包含PHPExcel库的文件: ```php require_once 'PHPExcel/PHPExcel.php'; ``` 2. 连接到MySQL数据库: ```php $servername = "localhost"; $username = "root"; $password = "password"; $dbname = "database"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } ``` 3. 执行查询语句获取数据: ```php $sql = "SELECT * FROM tablename"; $result = $conn->query($sql); ``` 4. 新建一个PHPExcel对象并设置一些属性: ```php $objPHPExcel = new PHPExcel(); $objPHPExcel->getProperties() ->setCreator("Your Name") ->setLastModifiedBy("Your Name") ->setTitle("MySQL导出Excel") ->setSubject("MySQL导出Excel") ->setDescription("MySQL数据导出到Excel"); ``` 5. 将数据填充到Excel中: ```php $row = 1; while($row_data = $result->fetch_assoc()) { $col = 0; foreach($row_data as $value) { $objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow($col, $row, $value); $col++; } $row++; } ``` 6. 设置Excel的输出: ```php $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="mysql_export.xls"'); header('Cache-Control: max-age=0'); $objWriter->save('php://output'); ``` 7. 关闭数据库连接: ```php $conn->close(); ``` 以上就是用PHPExcel导出MySQL数据到Excel的简单步骤。根据需要,您可以添加更多的样式和设置来自定义导出的Excel文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值