我正在使用Yii并拥有一个插件YiiExcel。当这个插件加载时,Gii不起作用。我的index.php
//do not run app before register YiiExcel autoload
$app = Yii::createWebApplication($config);
Yii::import('ext.yiiexcel.YiiExcel', true);
Yii::registerAutoloader(array('YiiExcel', 'autoload'), true);
// Optional:
// As we always try to run the autoloader before anything else, we can use it to do a few
// simple checks and initialisations
PHPExcel_Shared_ZipStreamWrapper::register();
if (ini_get('mbstring.func_overload') & 2) {
throw new Exception('Multibyte function overloading in PHP must be disabled for string functions (2).');
}
PHPExcel_Shared_String::buildCharacterSets();
//Now you can run application
$app->run();
当我尝试生成文件时,我得到了
PHP Error [2]
require_once(Text/Diff.php) [function.require-once]: failed to open stream: No such file or directory (/opt/yii-1.1.14.f0fee9/framework/gii/components/TextDiff.php:6)
#0 /opt/yii-1.1.14.f0fee9/framework/gii/components/TextDiff.php(6): CWebApplication->handleError()
#1 /opt/yii-1.1.14.f0fee9/framework/gii/components/TextDiff.php(6): require_once()
#2 /opt/yii-1.1.14.f0fee9/framework/YiiBase.php(401): include()
#3 unknown(0): autoload()
#4 /opt/yii-1.1.14.f0fee9/framework/gii/CCodeGenerator.php(109): spl_autoload_call()
#5 /opt/yii-1.1.14.f0fee9/framework/web/actions/CInlineAction.php(49): ModelGenerator->actionDiff()
#6 /opt/yii-1.1.14.f0fee9/framework/web/CController.php(308): CInlineAction->runWithParams()
#7 /opt/yii-1.1.14.f0fee9/framework/web/CController.php(286): ModelGenerator->runAction()
#8 /opt/yii-1.1.14.f0fee9/framework/web/CController.php(265): ModelGenerator->runActionWithFilters()
#9 /opt/yii-1.1.14.f0fee9/framework/web/CWebApplication.php(282): ModelGenerator->run()
#10 /opt/yii-1.1.14.f0fee9/framework/web/CWebApplication.php(141): CWebApplication->runController()
#11 /opt/yii-1.1.14.f0fee9/framework/base/CApplication.php(180): CWebApplication->processRequest()
#12 /opt/paradox/index.php(31): CWebApplication->run()
[root@portal-test paradox]# ll /opt/yii-1.1.14.f0fee9/framework/gii/components/
total 12
drwxr-xr-x 3 apache apache 4096 Nov 27 16:59 Pear
-rw-r--r-- 1 apache apache 537 Aug 12 01:15 TextDiff.php
-rw-r--r-- 1 apache apache 552 Aug 12 01:15 UserIdentity.php
[root@portal-test paradox]# ll /opt/yii-1.1.14.f0fee9/framework/gii/components/Pear/
total 4
drwxr-xr-x 3 apache apache 4096 Aug 12 01:15 Text
[root@portal-test paradox]# ll /opt/yii-1.1.14.f0fee9/framework/gii/components/Pear/Text/
total 24
drwxr-xr-x 4 apache apache 4096 Nov 27 16:59 Diff
-rw-r--r-- 1 apache apache 7457 Aug 12 01:15 Diff3.php
-rw-r--r-- 1 apache apache 12044 Aug 12 01:15 Diff.php
[root@portal-test paradox]# ll /opt/yii-1.1.14.f0fee9/framework/gii/components/Pear/Text/Diff
total 28
drwxr-xr-x 2 apache apache 4096 Nov 27 16:59 Engine
-rw-r--r-- 1 apache apache 2188 Aug 12 01:15 Mapped.php
drwxr-xr-x 2 apache apache 4096 Nov 27 16:59 Renderer
-rw-r--r-- 1 apache apache 6785 Aug 12 01:15 Renderer.php
-rw-r--r-- 1 apache apache 7560 Aug 12 01:15 ThreeWay.php
[root@portal-test paradox]#
答案 0 :(得分:2)
这是由于文件丢失。你可以在这里下载 Text / Diff.php :
然后将其放在 framework / gii / components / 或 protected / components 文件夹中。它应该工作。