Yii2 excel导入';PHPExcel IOU工厂和x27;找不到
我想读取Yii2中的excel记录,为此我搜索了一个扩展名,最后得到了以下扩展名 分机: 通过composer成功安装后,我将代码Yii2 excel导入';PHPExcel IOU工厂和x27;找不到,php,excel,import,yii2,Php,Excel,Import,Yii2,我想读取Yii2中的excel记录,为此我搜索了一个扩展名,最后得到了以下扩展名 分机: 通过composer成功安装后,我将代码 namespace app\controllers; use app\models\TempCdr; use app\models\User; use yii\web\UploadedFile; use yii; class BatchController extends \yii\web\Controller { public $user_mo
namespace app\controllers;
use app\models\TempCdr;
use app\models\User;
use yii\web\UploadedFile;
use yii;
class BatchController extends \yii\web\Controller
{
public $user_model;
public $allowed_file_extension = array('xls','xlsx');
public function init() {
$fileName = 'assets/CdrTmp/cpyCdr.xls';
$data = \moonland\phpexcel\Excel::import($fileName);
}
}
在我的索引控制器中,但没有找到错误类“PHPExcel_IOFactory”
安装扩展后的我的文件夹结构
moonlandsoft
Excel.php
composer.json
phpoffice
phpexcel
Documentation
Examples
src
Json更新
"phpoffice/phpexcel": "^1.8",
"moonlandsoft/yii2-phpexcel": "*"
请允许我知道问题出在哪里,提前感谢您的想法和建议。类文件位于
phpoffice/PHPExcel
包中,它是yii2 PHPExcel
扩展名的依赖项。请确保已成功安装扩展。您可以查看供应商
目录,并检查是否存在以下结构:
...
moonlandsoft/
...
phpoffice/
phpexcel/
Classes/
PHPExcel/
IOFactory.php
...
如果没有,您可以重新安装yii2 phpexcel
扩展
为了回答您的问题,我在应用程序上安装了扩展,并将以下代码片段放入操作中:
$fileName = '/tmp/a.xls';
$data = \moonland\phpexcel\Excel::import($fileName);
print_r($data);
$data
打印正确。然后,我将vendor/phpoffice
中的phpexcel
目录重命名为phpexcel2
。这一次,我复制了您的错误消息:
发布完整的控制器代码我已经通过composer安装了这两个扩展1)require--preferred dist moonlandsoft/yii2 phpexcel“*”2)composer require phpoffice/phpexcel,但文件夹结构与您提到的不同,请参阅问题更新以获得更好的理解