0

我知道在使用 MVC 框架时自动加载控制器是一种常见的做法。我已经制作了自己的迷你框架,控制器可以很好地自动加载。

使用相同的自动加载功能加载模型是否存在任何安全/不良问题?

IE

function __autoload($className) { // Autoload both controllers and models.
if(stristr($className, 'Model'))
{
    if (is_readable(Ms . $className . '.php')) {
        include Ms . $className . '.php';
    }
} else {
    if (is_readable(Cs . $className . '.php')) {
        include Cs . $className . '.php';
    }
}
}
4

1 回答 1

0

您可以使用命名空间spl_autoload_register()来获得这样的自动加载器。没有关于多自动加载器(用于多类类的自动加载器)而不是仅控制器自动加载器的特定安全问题。

我通常使用如下命名空间:

$home = new controller\home;
$home->actionIndex();

$users = new model\users;

$post = new view\post;

从那里很容易将\类名中的 a 替换为 a/以获取文件的特定路径(显然,一如既往地进行所需的安全检查)。

于 2013-01-02T09:55:39.450 回答