【发布时间】:2014-09-28 00:58:53
【问题描述】:
我的文件结构是这样的;
/
/public
-index.php
-login.php
/config.php
/init.php
/classes/ClassGroup/ClassName.class.php
__autoload 在 config.php 中定义,带有类的绝对路径。 index.php 中需要config.php,但是当我尝试启动一个新类时;
$user = new User_User;
结果;
Fatal error: Class 'User_User' not found in /......./public/index.php on line 27
它没有找到它,并且当试图在 __autoload() 的一开始就回显某些内容时,它也没有这样做,所以在我看来,它在找不到类时没有运行该函数。 任何人都知道问题可能是什么?
function __autoload($class){
//echo "autoloader started";
$pieces = explode('_', $class);
$path = __SITE_PATH.'/classes';
foreach( $pieces as $i ){
$path .= '/'.$i;
}
//echo "trying to include " .$path.".class.php";
require_once( $path . '.class.php' );
}
【问题讨论】:
-
让我们看看自动加载功能...
-
您可以使用数组 get_included_files() 来检查包含哪些文件。
-
我不明白你的文件结构。你能把它组织得更好吗?
-
@MarcelColomb 这与自动加载有什么关系? "我家没电" "别担心,你可以去加油站用点水来擦车".
-
如果您在 config.php 中回显某些内容,它会回显它吗?