我在Kohana创建了一个模块,但是当我尝试使用它时遇到了问题。当我尝试使用该类时,我收到以下错误:
ErrorException [ Fatal Error ]: Class 'PopcornInteractor' not found
APPPATH/classes/model/movie.php [ 120 ]
118 public function getPopcorn($popcorn) {
119 $uid = null;
120 $pci = new PopcornInteractor();
bootstrap.php
文件具有以下模块配置
Kohana::modules(array(
...,
'popcornmod' => MODPATH.'popcornmod'
));
当我调试Kohana::modules()
时,我得到以下结构:
...
popcornmod : "\/var\/www\/html\/mywebsite.com\/modules\/popcornmod\/"
我的文件结构是:
modules
+
+-+popcornmod
+
+-+classes
| +
| +-+PopcornInteractor.php
|
+-+config
| +
| +-+popcornmod.php
|
+-+init.php
PopcornInteractor.php文件包含以下内容:
class PopcornInteractor {
protected $config;
function __construct() {
$this->config = Kohana::$config->load('popcornmod')->as_array();
}
}
最后,在错误显示时显示的包含文件消息中,显示:
MODPATH/email/vendor/swiftmailer/lib/swift_required.php
MODPATH/email/vendor/swiftmailer/lib/classes/Swift.php
MODPATH/popcornmod/init.php
SYSPATH/classes/cookie.php
SYSPATH/classes/kohana/cookie.php
我尝试查找PopcornInteractor.php,但它不在包含的文件中。
这个mod在我的本地安装(OS X)中运行良好,但是当我上传到服务器(Linux)时,它无效。
有什么想法吗?
答案 0 :(得分:0)
更改了文件的名称,现在正在运行,最终的结构是:
modules
+
+-+popcornmod
+
+-+classes
| +
| +-+popcorninteractor.php <-- change: lower cases
|
+-+config
| +
| +-+popcornmod.php
|
+-+init.php