thinkphp使用PHPExcel导出excel表格

材料:PHPEXcel下载   GitHub:PHPEXcel下载


1、下载好后,解压:如图所示:



2、将其拷贝到thinkphp项目中,如图所示:


3、使用,编写工具类,


<?php

namespace Tool;

/**
 * 将HTML界面转化为word
 * 
 */
class PHPExcel {

    /**
     * 
     * @param array $letter 表格的列 $letter = array('A', 'B', 'C', 'D', 'E', 'F', 'F', 'G');
     * @param array $tableheader 表头,即为第一行 $tableheader = array('学号', '姓名', '性别', '年龄', '班级');
     * @param array $data 数据 为二维数组  $data = array(
     *      array('1', '小王', '男', '20', '100'),
     *       array('2', '小李', '男', '20', '101'),
     *       array('3', '小张', '女', '20', '102'),
     *       array('4', '小赵', '女', '20', '103')
     *   );
     * @param String $filename 文件名,用于下载的命名
     */
    static function excel($letter, $tableheader, $data, $filename) {
        //创建对象
        import('Org.Util.PHPExcel');
        //$test = new \UserTest();
        $excel = new \PHPExcel();
        //填充表头信息
        for ($i = 0; $i < count($tableheader); $i++) {
            $excel->getActiveSheet()->setCellValue("$letter[$i]1", "$tableheader[$i]");
        }
        //填充表格信息
        for ($i = 2; $i <= count($data) + 1; $i++) {
            $j = 0;
            foreach ($data[$i - 2] as $value) {
                $excel->getActiveSheet()->setCellValue("$letter[$j]$i", "$value");
                $j++;
            }
        }
        //创建Excel输入对象
        import('Org.Util.PHPExcel.Writer');
        $write = new \PHPExcel_Writer_Excel5($excel);
        header("Pragma: public");
        header("Expires: 0");
        header("Cache-Control:must-revalidate, post-check=0, pre-check=0");
        header("Content-Type:application/force-download");
        header("Content-Type:application/vnd.ms-execl");
        header("Content-Type:application/octet-stream");
        header("Content-Type:application/download");
        header('Content-Disposition:attachment;filename="' . $filename . '.xls"');
        header("Content-Transfer-Encoding:binary");
        $write->save('php://output');
    }

}
4、使用


    public function claExcel($dep,$spe,$name){
//        obtain();
        $m = M('数据表');
        $data = $m->where($map)->select();
        //p($data);
        $letter = array('A','B','C','D','E','F','G','H','I','J','K','L');
        $tableheader = array('学号','姓名','课题','指导老师','专业','班级','平时成绩','指导老师评分','评阅评分','答辩成绩','总评成绩','总评');

        $filename = base64_decode($spe).'--'.base64_decode($name);
        \Tool\PHPExcel::excel($letter, $tableheader, $data, $filename);
    }



OK




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值