陈广安个人网站
会写代码的咸鱼
陈广安个人网站阿里云盘资源
陈广安个人网站网盘资源搜索
“ 梦想还是要有的,万一实现了呢!”
— 马云

导出Excel表格,需要安装PHPExcel-1.8扩展

创建时间:2017-03-22

TP5框架为例,下载扩展文件

QQ图片20170322162538


放到vendor/目录下面,本例命名为 excel

    public function excel(){
        $name='data';//需要保存的文件名称
        $db = model('Date');//实例化数据库
        $data = $db->getDateAll();//查找数据库
        vendor('excel.Classes.PHPExcel');//引入导出excelPHP扩展
        $objPHPExcel = new \PHPExcel();
        /*以下是一些设置 ,什么作者  标题啊之类的*/
        $objPHPExcel->getProperties()->setCreator("mrchenanan@163.com")
            ->setLastModifiedBy("mrchenanan@163.com")
            ->setTitle("mrchenanan@163.com")
            ->setSubject("mrchenanan@163.com")
            ->setDescription("mrchenanan@163.com")
            ->setKeywords("excel")
            ->setCategory("result file");
        /*以下就是对处理Excel里的数据, 横着取数据,主要是这一步,其他基本都不要改*/
        foreach($data as $k => $v){
            $num=$k+1;
            $objPHPExcel->setActiveSheetIndex(0)
                //Excel的第A列,id是你查出数组的键值,下面以此类推
                ->setCellValue('A'.$num, $v['id'])
                ->setCellValue('B'.$num, $v['name'])
                ->setCellValue('C'.$num, $v['year'])
                ->setCellValue('D'.$num, $v['date']);
        }
        $objPHPExcel->getActiveSheet()->setTitle('User');
        $objPHPExcel->setActiveSheetIndex(0);
        header('Content-Type: application/vnd.ms-excel;charset=gb2313');
        header('Content-Disposition: attachment;filename="'.$name.'.xls"');
        header('Cache-Control: max-age=0');
        $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
        $objWriter->save('php://output');
        exit;
    }