这是我的 index.php 文件:
function Loader($class)
{
$base=$_SERVER["DOCUMENT_ROOT"];
if (file_exists($base.'/app/'.$class.'.php')) {
include($base.'/app/'.$class.'.php');
return true;
}
return false;
}
spl_autoload_register('Loader');
?>
<html>
<head>
</head>
<body>
<div id="container">
</div>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/main.js"></script>
</body>
</html>
在我的 main.js 文件中,我执行 AJAX 调用:
$.ajax({
type: 'POST',
url: 'controllers/UserController.php',
dataType: "json",
data: {
model: model,
method: method
},
success: function(result) {
if (typeof(template) != 'undefined'){
$.get('http://localhost/heliox/templates/'+template, function(data) {
$(target).empty();
$(target).html(_.template(data,{data:result}));
});
}
}
});
在 UserController.php 文件中,我有:
Class UserController extends BaseController
{
public function test()
{
echo "test";
}
}
$UserController = new UserController;
当我将我的“加载器”函数放在 UserController 文件中时,它工作正常并且类 BaseController 已加载,但是当该函数位于我的 index.php 文件中并且我进行 AJAX 调用时,我得到:
致命错误:第 13 行的 D:\xampp\htdocs\heliox\controllers\UserController.php 中找不到类“BaseController”。