PHPEXCEL在thinkphp中封装成类使用

phpexcel是一个强大的导入导出数据到excel表的插件类功能。本人在实际的项目开发中,会经常用到,下面为了以后方便使用,现将它封装成类。以下是在tp3.2的框架上使用。

(1)去phpexcel的官网下载phpexcel。

(2)在tp的核心库的第三库类vendor文件夹中新建一个excel的文件夹(自己定义合适文件夹名称就可以了),把下载的phpexcel文件夹和PHPExcel.php放在excel文件下。

(3)tp配置文件连接数据库就不说了

导出类:ArrayToExcel.class.php

<?php
    /**
    *导出excel表
    *
    */
    class ArraryToExcel{
    	/**
        *@param data    mysql中查询的二维数组数据
    	*@param path    PHPExcel的目录路径
        *@param colAttr  列属性
        *@param rowAttr  行属性
    	*@param options    属性选项
        *@param excelObj   PHPExcel的对象
        *@param valiData   列的有效性数据
    	*/
        private $data;
    	private $path;
        private $excelObj;
        private $colAttr=array(
                'A'=>array(//列的属性设置
                        'colName'=>'',//第一行的列名
                        'keyName'=>'',//每一列对应的赋值数组的key值
                        'width'=>''   //A列的宽度
                    ),
                //可以以 A B C D E F ....递增
               /* 'B'=>array(//列的属性设置
                        'colName'=>'',//第一行的列名
                        'keyName'=>'',//每一列对应的赋值数组的key值
                        'width'=>''   //B列的宽度
                    ),
                'C'=>array(//列的属性设置
                        'colName'=>'',//第一行的列名
                        'keyName'=>'',//每一列对应的赋值数组的key值
                        'width'=>''   //C列的宽度
                    ),
                'D'=>array(//列的属性设置
                        'colName'=>'',//第一行的列名
                        'keyName'=>'',//每一列对应的赋值数组的key值
                        'width'=>''   //D列的宽
                    )
                */
            );
        private $rowAttr=array(
                'firstRowHeight'=>'', //第一行的列名的高度
                'height'=>''         //2-OO无从行的高度
                );
        private $options=array(
                'excelname'=>'导出excel',  //导出的excel的文件的名称
                'sheettitle'=>'sheet1',    //每个工作薄的标题
                'creater'=>'',             //创建者,
                'lastmodified'=>'',        //最近修改时间
                'title'=>'office xls document',//当前活动的主题
                'subject'=>'office xls document',
                'description'=>'数据导出',
                'keywords'=>'数据导出',
                'category'=>''
            );
        private $validData=array();

    	/**
    	*创建实例自动执行函数
    	*/
        public function __construct($data,$colAttr,$rowAttr,$options,$validData){
         	/**
          	*导入文件的位置一定要准确,本人是把放在Vendor下,先在Vendor下建一个excel文件夹
         	*把下载的PHPExcel文件夹和PHPExcel.php放在excel下.
          	*/
            $this->path=trim($path).'.';
            Vendor($this->path.'PHPExcel')
            $this->excelObj=new \PHPExcel();
            $this->data=$data;
            $this->colAttr=array_merge($this->colAttr,$colAttr);
            $this->rowAttr=array_merge($this->ro
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值