zoukankan      html  css  js  c++  java
  • tp中phpexcel导出实例

        public function phpexcel(){
            //测试$this->display("User:xx");//跨模块分配页面User模块xx.html
            
            // xx\ThinkPHP/Extend/Vendor/Excel/PHPExcel.php
            Vendor('Excel.PHPExcel'); //导入thinkphp第三方类库
            //创建一个读Excel模板的对象
            $objReader=PHPExcel_IOFactory::createReader('Excel5');
            $objPHPExcel = $objReader->load ("template.xls");//读取模板,模版放在根目录
            //获取当前活动的表
            $objActSheet=$objPHPExcel->getActiveSheet();
            $objActSheet->setTitle('xxx');//设置excel的标题
            $objActSheet->setCellValue('A1','患者信息导出');
            $objActSheet->setCellValue('A2','范围:'.time().'--'.time()+5000);
            $objActSheet->setCellValue('F2','导出时间:'.date('Y-m-d H:i:s'));
            
            //现在开始输出列头了
            $objActSheet->setCellValue('A3','编号');
            $objActSheet->setCellValue('B3','姓名');
            $objActSheet->setCellValue('C3','性别');
            
            //具体有多少列,有多少就写多少,跟下面的填充数据对应上就可以
            //现在就开始填充数据了 (从数据库中)
            $baseRow = 4; //数据从N-1行开始往下输出 这里是避免头信息被覆盖
            $list=array(
                array('id'=>'似懂非懂','name'=>'的身份','sex'=>'好好'),
                array('id'=>'体育静态','name'=>'全文','sex'=>'好那么好'),
                array('id'=>'他','name'=>'啥都','sex'=>'vb'),
                array('id'=>'大范甘迪','name'=>'后感觉','sex'=>'刚回家'),
                array('id'=>'阿瑟斯','name'=>'好','sex'=>'如啼眼'),
                array('id'=>'为二位','name'=>'福德宫','sex'=>'为'),
            );
            foreach ( $list as $r => $dataRow ) {
                $row = $baseRow + $r;
                
                //将数据填充到相对应的位置,对应上面输出的列头
                $objPHPExcel->getActiveSheet()->setCellValue('A' . $row, $dataRow ['id'] );
                $objPHPExcel->getActiveSheet()->setCellValue('B' . $row, $dataRow ['name'] );
                $objPHPExcel->getActiveSheet()->setCellValue('C' . $row, $dataRow ['sex'] );
            }
            
            //导出
            $filename ='xxx患者信息导出';//excel文件名称
            $filename = iconv('utf-8',"gb2312",$filename);//转换名称编码,防止乱码
            header ( 'Content-Type: application/vnd.ms-excel;charset=utf-8' );
            header ( 'Content-Disposition: attachment;filename="' . $filename . '.xls"' ); //”‘.$filename.’.xls”
            header ( 'Cache-Control: max-age=0');
            
            $objWriter = PHPExcel_IOFactory::createWriter ( $objPHPExcel, 'Excel5' ); //在内存中准备一个excel2003文件
            $objWriter->save ('php://output');
        }
  • 相关阅读:
    python操作csv,对比两个csv文件某列值
    监控端口和僵尸进程脚本
    openldap创建只读账号
    shell 判断文件内容是否改变
    golang调用shell命令标准输出阻塞管道
    fexpect 源码
    python pexpect 免交互自动恢复gitlab数据
    consul client agent 本地读取key value
    pip 安装三方库报超时
    微信小程序滚动tab的实现
  • 原文地址:https://www.cnblogs.com/loveyouyou616/p/2812426.html
Copyright © 2011-2022 走看看