zoukankan      html  css  js  c++  java
  • 基于phpExcel写的excel类

    <?php
    /*
     * 类的功能
     * 传入二位数组导出excel 
     * 传入excel 导出二位数组
     * @author mrwu
     */
    require('PHPExcel.php');
    require_once 'PHPExcel/Reader/Excel5.php';  
    include 'PHPExcel/IOFactory.php';  
    
    class plugin_phpexcel
    {
        private $export_excel_title;//导出excel标题
        private $export_sheet_title;//导出sheet标题
        private $letters;
        private $php_excel;//php_excel操作类
        private $active_sheet;
        
        function __construct($export_excel_title='excel',$export_sheet_title='sheet1')
        {
        $this->letters=range('A','Z',1);
        $this->php_excel=new PHPExcel();
        $this->php_excel->setActiveSheetIndex(0);
        $this->active_sheet=$this->php_excel->getActiveSheet();
        $this->export_excel_title=$export_excel_title;
        $this->export_sheet_title=$export_sheet_title;
        }
        
        /*
         * $title='标题' array
         * $import_arr 插入excel的数组 要求二位数组
         */
        function export($title=array(),$import_arr)
        {
        //有设置excel第一行的标题
            if($title)
            {
           $count=count($title);
            for($i=0;$i<=$count;$i++)
                 {
                      $this->active_sheet->setCellValue($this->letters[$i].'1',$title[$i]);
                 }
            }
         //循环插入二维数组
            $count=count($import_arr[0]);
            $row=1;
            foreach($import_arr as $value)
            {
            
                $row++;
                $j=0;
                foreach($value as $key=>$v)
                {
                $this->active_sheet->setCellValue($this->letters[$j].$row,$v);
                echo $value[$j];
                $j++;
                }
            }
            $phpWriter=PHPExcel_IOFactory::createWriter($this->php_excel,'Excel5');
            //设置一些标题等
            $file=$this->export_excel_title;
            $this->active_sheet->setTitle($this->export_sheet_title);
            
            //设置header
            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="excel.xls"');  
            header("Content-Transfer-Encoding:binary");  
             
            $phpWriter->save('php://output'); 
            
        
        }
    }
        //测试
        $php_excel=new plugin_phpexcel('excel','sheet1');
        $php_excel->export(array('title','content'),array(array('title'=>'haha','content'=>'shit'),array('title'=>'hehe','content'=>'fuck')));
  • 相关阅读:
    网页打开qq
    正则表达式
    微信小程序 如何使用globalData
    微信小程序中常见的typeof cb == “function” && cb(that.globalData.userInfo)
    MongoDB
    Elasticsearch学习
    Kafka学习之路 (一)Kafka的简介
    mybatis sql语句中转义字符
    定时任务
    mybatis insert into 返回id,useGeneratedKeys,keyColumn,keyProperty,parameterType
  • 原文地址:https://www.cnblogs.com/hubing/p/3386479.html
Copyright © 2011-2022 走看看