tp导出excel信息

admin3年前thinkphp488
public function studentsExport(){
        set_time_limit (0);
        $where['a.is_activation'] = 1;
        $where['a.is_del'] = 0;
        $where['a.level'] = 3;
        $where['a.teacher_id'] = ['GT', 0];
        $list = M('users')
        ->alias('a')
        ->join('__USERS__ b', 'b.users_id = a.teacher_id', 'LEFT')
        ->field('a.username,a.nickname,a.student_contact_phone,a.student_email,b.username as teacher_username,b.nickname as teacher_nickname,b.teacher_faculty,b.teacher_research_direction')
        ->where($where)->select();
        if(empty($list)) $this->error('数据为空');
        vendor('PHPExcel.PHPExcel');
        //实例化PHPExcel类
        $objPHPExcel = new \PHPExcel();
        //激活当前的sheet表
        $objPHPExcel->setActiveSheetIndex(0)
        ->setCellValue('A1', '学生学号')
        ->setCellValue('B1', '学生姓名')
        //->setCellValue('C1', '学生研究方向')
        ->setCellValue('C1', '学生电话')
        ->setCellValue('D1', '学生邮箱')
        ->setCellValue('E1', '导师工号')
        ->setCellValue('F1', '导师姓名')
        ->setCellValue('G1', '导师院系')
        ->setCellValue('H1', '导师专业方向');

        //数据循环写入表格
        foreach ($list as $v) {
            $objPHPExcel->getActiveSheet(0)->setCellValue('A' . ($i + 2), $v['username']);
            $objPHPExcel->getActiveSheet(0)->setCellValue('B' . ($i + 2), $v['nickname']);
            //$objPHPExcel->getActiveSheet(0)->setCellValue('C' . ($i + 2), $v['username']);
            $objPHPExcel->getActiveSheet(0)->setCellValue('C' . ($i + 2), $v['student_contact_phone']);
            $objPHPExcel->getActiveSheet(0)->setCellValue('D' . ($i + 2), $v['student_email']);
            $objPHPExcel->getActiveSheet(0)->setCellValue('E' . ($i + 2), $v['teacher_username']);
            $objPHPExcel->getActiveSheet(0)->setCellValue('F' . ($i + 2), $v['teacher_nickname']);
            $objPHPExcel->getActiveSheet(0)->setCellValue('G' . ($i + 2), $v['teacher_faculty']);
            $objPHPExcel->getActiveSheet(0)->setCellValue('H' . ($i + 2), $v['teacher_research_direction']);
        }
 
        $filename = '学生选择教师信息,导出日期:'.date('Y-m-d H时i分s秒', time()).'.xlsx';
        // 下载这个表格,在浏览器输出
        //8.设置当前激活的sheet表格名称;
        $objPHPExcel->getActiveSheet()->setTitle('选师记录');
        //9.设置浏览器窗口下载表格
        header("Content-Type: application/force-download");
        header("Content-Type: application/octet-stream");
        header("Content-Type: application/download");
        header('Content-Disposition:inline;filename="' . $filename . '"');
        //生成excel文件
        $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
        //下载文件在浏览器窗口
        $objWriter->save('php://output');
        exit();
    }


相关文章

eyoucms getInfo上传错误

endor('getid3.getid3');隐藏掉视频获取时长...

TP无法处理事务

1、InnoDB和MyISAM对事务的支持怎么样?InnoDB支持事务MyISAM不支持事务...

thinkphp分页,数字页+上下页+跳转+每页数据下拉

<?php namespace Think; class Page{     public $firstRow;&...

think-queue队列的实现

https://www.jianshu.com/p/f5e33215c13c...

thinkphp5 缓存 cache

http://www.17bigdata.com/book/thinkphp5/ZaXiang/HuanCun.html...

thinkphp分页paginate获取可以foreach的数据

public function index(){    $goods_name = I('goods_name&...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。