yii2手动添加插件PHPExcel

Posted JahanGu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了yii2手动添加插件PHPExcel相关的知识,希望对你有一定的参考价值。

1.下载地址:https://github.com/phpOffice/PHPExcel

2.解压并修改文件名为phpexcel

之后在yii项目的vendor目录下创建一个文件夹命名为phpoffice

把phpexcel文件放到phpoffic文件夹下

此时查看vendor\\phpoffice\\phpexcel目录下会看到这些文件

 3.到vendor\\composer目录下修改文件autoload_namespaces.php,

添加一句代码注册命名空间

\'PHPExcel\' => array($vendorDir.\'/phpoffice/phpexcel/Classes\'),

如图:

 

接下来就可以开始使用了;

    //excel导入函数
    public function import($fileName){

        $objReader = new \\PHPExcel();
     
        $file = $fileName;       
        $objPHPExcel = \\PHPExcel_IOFactory::load($file); 
        $allSheet = $objPHPExcel->getSheetCount();
        for($i=0; $i<$allSheet;$i++){
            $dataSheet = $objPHPExcel->getSheet($i)->toArray(\'\', true, true);
            if(!$this->saveData($dataSheet)) return \'0\';

        }

        return \'1\';
    }

 

使用方法是直接   $objReader = new \\PHPExcel();

记住实例化时前面要加 \\  

以上只是我自己写的例子,本教程是写怎么手动引入PHPExcel插件的,具体用法就不作多介绍了,可自行百度;

注意执行下面步骤需备份文件,以防万一:

php版本大于5.6可能会报错找不到该类;

如要支持就需要修改vendor\\composer目录下的autoload_real.php文件

把关于$useStaticLoader这个变量的if判断的代码都删了;如下图红框标识的代码都删了; 

之后再把vendor\\composer目录下的autoload_static.php文件删了,就可以支持更高版本的php了; 

注意看>= 50600那部分的代码就明白为什么php版本大于5.6可能会报错找不到该类;

 

以上是关于yii2手动添加插件PHPExcel的主要内容,如果未能解决你的问题,请参考以下文章

YII2+PHPEXCEL

PHPExcel yii2 加载使用

Yii2.0 手动添加扩展 redis为例

markdown PHPExcel Notes和代码片段

yii2.0 框架 载入 PHPExcel 类

php代码片段: sendFile/videoStream/sendEmail/phpexcel/ffmpeg/zip