我在Linux机器上得到Kohana 2.3.4中的Class not found错误,但在Windows上运行正常。Kohana 2.3.4 + LINUX - ErrorException [致命错误]:找不到类
我的Windows机器:
- PHP版本5.2.9
- Windows 7旗舰版
我的Linux机器:
- PHP版本5.3.2-1ubuntu4。 15
- Ubuntu 10.04
即时得到这个错误:
Fatal error: Class 'calafate_orm' not found in /home/jay/workspace/Facebook_App/application/helpers/user.php on line 514
这是我如何调用模型:
//controllers/user.php
class User_Core{
...
$fbuser = calafate_orm::factory('fbuser')->where('fbid', $user['id'])->find();
...
}
相同的代码运行正常在Windows上。
的calafate_orm是这样的:
//libraries/calafate_orm.php
<?php
abstract class calafate_orm_core extends ORM{
protected $db = 'calafate';
protected $table_names_plural = false;
public function save(){
$field = ($this->id)?'modification_date':'creation_date';
$this->$field = date('Y-m-d H:i:s');
parent::save();
}
}
?>
我所有的文件名都在小写。
会发生什么情况?
在此先感谢
FIXED
图书馆类名和文件名称以大写字母。
更名图书馆Calafate_orm和编辑类的声明是这样的:
<?php
abstract class Calafate_orm_core extends ORM{
...
}?>
就是这样。
感谢您的指点,我正确的方向。
检查kohana自动加载程序的规范如何正确编写文件名(案例!)。 Windows会吃掉一切,Linux是区分大小写的。 – hakre 2012-04-13 13:24:44
谢谢,我已经重新安装了php 5.3。10有一些扩展,这不再发生,现在我得到了“致命错误:调用未定义的函数glob()”,但我想我会创建一个新的问题。 – Jay 2012-04-16 19:58:56
你应该为自己做个忙,并考虑让系统管理员检查你的设置,这样你就可以保证一切安全。 'glob()'不存在你听到过的问题。 – hakre 2012-04-16 20:03:15