初学thinkphp
来源:互联网 发布:达芬奇调色 知乎 编辑:程序博客网 时间:2024/06/05 16:24
第一次写博客,以前经常在编程方面遇到问题进行百度,发现博客解决了我很多问题。所以我想通过博客记录下我的学习之路,同时也是希望给其他人进行参考和指点。
前面就进行下载thinkphp,然后导入到项目中,访问项目首页成功。然后下面直接学习thinkphp的架构。
1、模块化设计
一个典型的URL访问规则是(我们以默认的PATHINFO模式为例说明,当然也可以支持普通的URL模式):
http://serverName/index.php(或者其他应用入口文件)/模块/控制器/操作/[参数名/参数值...]
Common模块是一个特殊的模块,是应用的公共模块,访问所有的模块之前都会首先加载公共模块下面的配置文(Conf/config.php
)
自动生成模块目录
例如:当需要生成admin模块用于后台应用,在应用入口文件(index.php)中定义如下:
define('BIND_MODULE','Admin'); // 绑定Admin模块到当前入口文件
就会生成Admin模块的目录,并生成一个默认的控制器类Admin\Controller\IndexController
。 如果需要生成更多的控制器类,可以定义BUILD_CONTROLLER_LIST
常量
define('BUILD_CONTROLLER_LIST','Index,User,Menu');
BUILD_MODEL_LIST
支持生成多个模型类: define('BUILD_CONTROLLER_LIST','Index,User,Menu');设置访问列表
如果你的应用下面模块比较少,还可以设置允许访问列表和默认模块,这样可以简化默认模块的URL访问。
'MODULE_ALLOW_LIST' => array('Home','Admin','User'),
'DEFAULT_MODULE' => 'Home',
设置之后,除了Home、Admin和User模块之外的模块都不能被直接访问,并且Home模块是默认访问模块(可以不出现在URL地址)。
单模块设计
如果你的应用够简单,那么也许仅仅用一个模块就可以完成,那么可以直接设置:
// 关闭多模块访问
'MULTI_MODULE' => false
,
'DEFAULT_MODULE' => 'Home',
一旦关闭多模块访问后,就只能访问默认模块(这里设置的是Home)多入口设计
可以给相同的应用及模块设置多个入口,不同的入口文件可以设置不同的应用模式或者绑定模块。
例如,我们在
index.php
文件的同级目录新增一个home.php
入口文件,并绑定Home模块:
- 初学thinkphp
- ThinkPHP初学心得
- 初学THINKPHP,感觉很强大
- thinkphp
- thinkphp
- ThinkPHP
- Thinkphp
- ThinkPHP
- thinkphp
- ThinkPHP
- THINKPHP
- thinkphp
- thinkphp ....
- thinkphp
- thinkphp
- thinkPhp
- thinkphp
- thinkphp
- Socket编程 链接
- CF MemSQL Start[c]UP 2.0 - Round 1 D
- 以clone和序列化方式实现对象复制
- Wikioi 1012
- Permutations
- 初学thinkphp
- Wikioi 1014
- hud_bone Collector
- HDU 3488 费用流 圈
- 十大致癌食物黑名单公布 葵花子竟然排第一(图)
- 树链剖分-点的分治(链的点的个数为k的点对数)
- Android 网络通信框架Volley简介(Google IO 2013)
- POJ 1195 Mobile phones(树状数组)
- hdu 2089 不要62