ThinkPHP框架中解决无法加载控制器的问题—原因之一
2015-11-09 20:06
459 查看
相信许多PHP开发者在使用ThinkPHP框架进行快速开发的时候遇到过通过URL访问控制器方法时遇到图上的这种问题。
为什么会无法加载控制器呢,原因有很多,但是据我所了解的来看,最有可能的还是:
你的Controller文件夹下没有存放你控制器的文件,因为很可能你在开始学习或者测试的时候将控制器类写在了Index控制器的文件中,但是在ThinkPHP中,在IndexController.class.php文件中写两个类是不规范的,因为两个类如果写在了同一个文件里,那么在通过URL访问文件名以外的其它类时,就像这样,http://localhost:81/thinkphp_3.2.3_core/index.php/Home/Blog/read/5,系统是找不到这个控制器的,也就是说,系统找到这个控制器只有通过文件名BlogController.class.php来找,你如果没有新建这个文件是不能指望系统帮你从IndexController.class.php这个文件找的,因为在Controller文件夹下如果找不到BlogController.class.php这个文件,系统就认为你没有写这个控制器,所以才会出现那样的错误。
我原来以为是因为没有开启参数绑定功能,但是我找到ThinkPHP\Conf\convention.php看到这个
第二行显示参数绑定功能是开启的,所以就否定了我原来的想法,后来通过咨询其他人才意识到是没有新建文件的原因,才写下这篇博客,希望与所有的PHP开发者共勉,不要再犯这么愚蠢的错误了。
相关文章推荐
- 一个关于if else容易迷惑的问题
- Android之使用Http协议实现文件上传功能
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- 如何成为一名专家级的开发人员
- PHP数据库长连接mysql_pconnect的细节
- kindeditor 批量上传 上传失败 thinkphp swfupload session
- mysql集群之MMM简单搭建
- Php Installing An Expansion
- 通晓网络测试常用命令
- 插件管理框架 for Delphi(一)
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- 安装Apache和PHP的一些补充
- Linux Apache+MySQL+PHP
- 建立Apache+PHP+MySQL数据库驱动的动态网站