ThinkPHP5实现PHPExcel操做

下载好类文件之后,先找到咱们须要的类文件php

 

而后选好框架,找到与application同级的目录,叫作:extendapp

 

而后在index.php入口文件中加一行代码用来定义路径的(虽然不必定能用上)框架

define('EXTEND_PATH', __DIR__ . '/../extend/');//加载第三方路由

 

而后在extend目录下建立文件夹lib,在把excel的类放进去phpstorm

打开PHPExcel设置命名空间调试

完成配置,如今可使用了!excel

咱们在控制器use一下,例如:orm

你可能会遇到报错,好比什么类型错误之类的或者找不到类之类的,只须要在PHPexcel全部用到的类前面加个反斜杠就能够了,例如blog

要注意的是须要把整个文件里面全部的地方都加上,这个时候可能会报错instance之类的,依照惯例,ctrl+单击,找到上面被圈起来的类,在头文件引用一下就能够了,好比路由

就是这个类没有找到,因此在头部io

 

use PHPExcel就能够了!!!!

 

配置完成,那你能够开心的玩耍PHPExcel了~

 

要注意的是在作导入的时候文件格式不同用到的代码也是不同的

 

报错:Cannot declare class lib\PHPExcel, because the name is already in use in D:\phpStudy\WWW\month6_1607phpA\TP5\extend\lib\PHPExcel.php on line 35

缘由:是由于类名使用重复了,这个时候须要修改如下主文件,也就是PHPExcel的名字,注意一处修改到处修改,不过phpstorm是比较不错的,例如:

 

 会给你改一部分,而后调试如下以前引用过的部分,改为新名字,就能够继续了,直到你碰到下边的代码

 

可能会抛出一个错误:Cannot declare class lib\PHPExcel, because the name is already in use in D:\phpStudy\WWW\month6_1607phpA\TP5\extend\lib\PHPExcel.php on line 35

缘由:我使用的场景是上传了xlsx的文件,因此会使用2007的那段代码,因此出现了报错

因此就去2007的文件里面去找,找报错中的方法

果真是能够找到的!而后修改为咱们新的主文件名字就能够了(别忘记引用命名空间哦~)

 

作导出的时候,设置sheet名称会报错

 

 

 关注到我标红的地方了吗?去源代码修改吧!!!

 

 

再看,报错是updateNameFormulas这个方法报错,因此ctrl+单击找到这个方法,你就找到问题了!

 

而后在开头须要use一下主文件,否则也会报错!

 

 

继续查看报错

按照上面的思路继续找到854行,ctrl+点击追溯源代码,发现引用的主文件也是错的

修改了再试试看,就不会报错了,代码也能够开心的运行了~

相关文章
相关标签/搜索