Yii2 excel导入'PHPExcel_IOFactory'找不到

我想读Yii2的excellogging,因为我search一个扩展,最后我得到了以下扩展

扩展名: http : //www.yiiframework.com/extension/yii2-phpexcel/#add-comment

通过composer php成功安装后,我把代码

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": "*" 

我可以知道这个问题是什么,提前感谢您的想法和build议。

PHPExcel_IOFactory类文件位于phpoffice/phpexcel包中,它是yii2-phpexcel扩展的依赖项。 请确保您已经成功安装了扩展。 您可以查看vendor目录,并检查是否有以下结构:

 ... moonlandsoft/ ... phpoffice/ phpexcel/ Classes/ PHPExcel/ IOFactory.php ... 

如果没有,您可以重新安装yii2-phpexcel扩展。

为了回答你的问题,我在我的应用程序上安装了扩展,并将下面的代码片段放在一个动作中:

 $fileName = '/tmp/a.xls'; $data = \moonland\phpexcel\Excel::import($fileName); print_r($data); 

$data打印正确。 然后,我将vendor/phpofficephpexcel目录重命名为phpexcel2 。 这一次,我转载了你的错误信息:

未找到类“PHPExcel_IOFactory”