我正在尝试构建自己的MVC框架,但我遇到了自动加载器的问题。
我有以下目录布局:
-application
--Model
---RegiserUser.php
--Libs
---Base.php
---Model.php
---Model
--Controller
---Login.php
Model_RegiserUser扩展了Model,扩展了Base
自动加载器方法位于基类中。我试图模仿你在Zend中加载类的方式:
protected function __autoload( $class_name )
{
echo 'test';
$filename = str_replace( '_', DIRECTORY_SEPARATOR, strtolower( $class_name ) ) . '.php';
$file = ROOT . $filename;
echo $file;
if( !file_exists( $file ) ) {
return FALSE;
}
include $file;
}
我收到了这个错误:
致命错误:第31行的C:\ EasyPHP \ data \ localweb \ application \ controller \ Login.php中找不到类'Model_RegisterUser'
答案 0 :(得分:1)
strtolower是你的问题...... 在像unix这样的系统上你试图加载文件“registeruser.php”而不是“RegiserUser.php”(区分大小写;))