Home >Backend Development >PHP Tutorial >ThinkPHP3.2无法加载控制器是什么原因

ThinkPHP3.2无法加载控制器是什么原因

PHPz
PHPzOriginal
2016-06-13 12:07:356225browse

ThinkPHP3.2无法加载控制器的原因:1、定义控制器时使用了命名空间;2、控制器定义有误,例如:class名称拼写错误;3、模块设置为禁止访问或未设置在允许访问的列表中。

ThinkPHP3.2无法加载控制器是什么原因

ThinkPHP3.2无法加载控制器的主要原因和解决方法

1、APP_USE_NAMESPACE(是否使用命名空间):

当设置为false时,如果定义控制器时使用了命名空间,则会导致无法加载控制器,此时将参数设为true即可。可在ThinkPHP/Common/Conf/convention.php中设置。

2、ACTION_BIND_CLASS(是否绑定方法和类):

当设置为false时,Controller文件夹的结构应该为Controller/View名Controller.class.php,方法在类中逐个写;但设置为ture时,则Controller文件夹的结构应该为Controller/View名/方法.class.php,一个类对应一个方法。

3、MODULE_ALLOW_LIST(允许访问模块)和MODULE_DENY_LIST(禁止访问模块):

当模块设置在禁止访问或未设置在允许访问的列表中,则无法正常访问该模块下的所有页面。

4、URL_MODEL(URL访问模式):

当不为0时,若使用U方法调用模块下的其他控制器的方法,需通过定义BIND_MODULE来定义模块,否则无法识别当前模块。

5、控制器定义有误:

控制器中必须在首个非注释行定义命名空间,并且定义控制器时注意class名称的拼写,以及extends的控制器是否存在,常常因为这个小问题导致无法访问控制器。

6、BIND_MODULE(绑定模块):

如果在入口文件中绑定了模块,则路径中不能再包含模块,否则无法访问控制器。

更多相关知识,请访问 PHP中文网!!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:qeephp3.0 公布了Next article:瞧这段简单的代码