Linux マシンの Kohana 2.3.4 で Class not found エラーが発生しますが、Windows ではすべて正常に動作します。
私の 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();
}
}
?>
ファイル名はすべて小文字です。
何が起こっている可能性がありますか?
前もって感謝します
修繕
ライブラリ クラス名とファイル名は、大文字で始まります。
ライブラリの名前を Calafate_orm に変更し、クラス宣言を次のように編集しました。
<?php
abstract class Calafate_orm_core extends ORM{
...
}?>
以上です。
私を正しい方向に向けてくれたhakreに感謝します。