美文网首页
在thinkphp5中PHPexcel实战

在thinkphp5中PHPexcel实战

作者: 井陉陉山优品 | 来源:发表于2020-08-17 14:03 被阅读0次

在thinkphp5中PHPexcel实战,其实很简单难的就是后面的路很漫长慢慢琢磨

网盘地址:链接: https://pan.baidu.com/s/1jj4G_y7sBLg76L7ZZDDnaA 提取码: jfj9 复制这段内容后打开百度网盘手机App,操作更方便哦

1.官网下载PHPEXel

下载地址:https://github.com/PHPOffice/PHPExcel

下载后只要Classes,复制Classes到tp5的extend下,并改名为PHPExcel,如下图所示

2.直接使用

建立Excel控制器,如下图所示,内容如下所示(例如:我要导出admin表中的内容,代码如下),导出如下图二所示。

代码如下:

<?php

/**

* Created by PhpStorm.

* User: insist

* Date: 2019/1/22

* Time: 10:25

*/

/**

* Created by PhpStorm.

* User: insist

* Date: 2018/12/4

* Time: 16:31

*/

namespace app\index\controller;

use think\Controller;

class Excel extends Controller

{

    public function outExcelRecharge() {

        $data      = db('admin')->order('id desc')->select();

        $field = array(

            'A' => array('id', '唯一标识符'),

            'B' => array('username', '账号'),

            'C' => array('name', '姓名'),

            'D' => array('phone', '电话'),

            'E' => array('time', '注册时间'),

        );

        $this->phpExcelList($field, $data, '后台用户_' . date('Y-m-d'));

    }

    /**

    * 直接导出需要生产的内容

    * @param $field

    * @param $list

    * @param string $title

    * @throws \PHPExcel_Exception

    * @throws \PHPExcel_Writer_Exception

    */

    public function phpExcelList($field, $list, $title='文件')

    {

        import('PHPExcel.PHPExcel');

        $objPHPExcel = new \PHPExcel();

        $objWriter = new \PHPExcel_Writer_Excel5($objPHPExcel); //设置保存版本格式

        foreach ($list as $key => $value) {

            foreach ($field as $k => $v) {

                if ($key == 0) {

                    $objPHPExcel->getActiveSheet()->setCellValue($k . '1', $v[1]);

                }

                $i = $key + 2; //表格是从2开始的

                $objPHPExcel->getActiveSheet()->setCellValue($k . $i, $value[$v[0]]);

            }

        }

        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='.$title.'.xls');

        header("Content-Transfer-Encoding:binary");

        $objWriter->save('php://output');

    }

}

效果如下:

井陉陉山优品:http://www.shijiazhuang.ink

相关文章

网友评论

      本文标题:在thinkphp5中PHPexcel实战

      本文链接:https://www.haomeiwen.com/subject/ywebdktx.html