首页 技术 正文
技术 2022年11月10日
0 收藏 794 点赞 4,033 浏览 2022 个字

前台入口文件index.php

<?php
//前台入口
define('THINKPHP_PATH', '../ThinkPHP/');//底层的位置
define('APP_PATH', './home/');//定义项目位置
define('APP_DEBUG', true);//定义DEBUG开关
require_once THINKPHP_PATH.'ThinkPHP.php';
//echo 'hellow';?>

配置文件:

 <?php
return array(
//'配置项'=>'配置值'
'DEFAULT_C_LAYER' => 'Controller', // 默认的控制器层名称
'URL_MODEL' => 1, // URL访问模式,可选参数0、1、2、3,代表以下四种模式:
);
?>

Controller下的IndexController.class.php文件:

 <?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
public function index(){
echo "hello world";
}
}

浏览器调试结果:

这个路径http://localhost:8080/test/index.php是可以显示控制器方法中的欢迎信息的,

而http://localhost:8080/test/index.php/index和http://localhost:8080/test/index.php/index/index却提示了错误信息

🙁

无法加载模块:Index

错误位置

FILE: C:\wamp\www\ThinkPHP\Library\Think\Dispatcher.class.php  LINE: 172

TRACE

#0 C:\wamp\www\ThinkPHP\Library\Think\Dispatcher.class.php(172): E(‘???????????????…’)
#1 C:\wamp\www\ThinkPHP\Library\Think\App.class.php(36): Think\Dispatcher::dispatch()
#2 C:\wamp\www\ThinkPHP\Library\Think\App.class.php(184): Think\App::init()
#3 C:\wamp\www\ThinkPHP\Library\Think\Think.class.php(120): Think\App::run()
#4 C:\wamp\www\ThinkPHP\ThinkPHP.php(96): Think\Think::start()
#5 C:\wamp\www\test\index.php(7): require_once(‘C:\wamp\www\Thi…’)
#6 {main}

 然后百度得知,开启了DEBUG调试模式后,控制器路径名要严格区分大小写。顿悟,修改地址为:http://localhost:8080/test/index.php/Index和http://localhost:8080/test/Index.php/index均还是一样的问题。遂查阅官方手册是可以修改不区分大小写的:在配置文件中加上一句话:’URL_CASE_INSENSITIVE’  =>  true,   // 默认false 表示URL区分大小写 true则表示不区分大小写。试了下,还是不行! 想了想,是不是Controller的问题,继续查阅手册。得知

自从3.2之后thinkphp默认的控制器不再使用Action,而是使用了更贴近MVC模式的Controller。

如果你原来习惯用了Action,还是可以吧Controller修改成Action的

可以这样定义:

 namespace Home\Action;
use Think\Action;
class IndexAction extends Action{}

然后,在配置文件config.php中,设置:

 'DEFAULT_C_LAYER'=>'Action'

遂,把Controller修改成Action,还是一样的问题,我的天!

继续百度!

发现发现别人的目录结构和我的好像不一样!

仔细查看代码

 define('APP_PATH', './home/');//定义项目位置

发现3.1生成的home项目目录下并没有Home目录

而3.2生成的home项目目录却多了一层Home目录

因此我们在URL地址上必须加上Home目录,也就是:http://localhost:8080/test/index.php/Home/Index/index(文件入口[index.php]/Home[默认]/控制器名[Index]/方法名[index])

thinkphp无法加载模块解决办法

浏览器粘贴访问,终于显示出那诱人可爱的hellow world

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,492
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,907
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,740
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,493
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,132
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,295