ThinkPHP2.docx
- 文档编号:1868472
- 上传时间:2022-10-24
- 格式:DOCX
- 页数:13
- 大小:520.77KB
ThinkPHP2.docx
《ThinkPHP2.docx》由会员分享,可在线阅读,更多相关《ThinkPHP2.docx(13页珍藏版)》请在冰豆网上搜索。
ThinkPHP2
ThinkPHP
(二)
回顾(Smarty部分)
1、开启缓存
$smarty->caching=1|true|2
2、$smarty->caching=1和2的区别
$smarty->caching=1:
以PHP文件中$smarty->cache_lefetime=10为准
$smarty->caching=1:
以混编文件文件中$smarty->cache_lefetime=10为准
3、单模板多缓存技术
$smarty->display('模板的名称',唯一的编号)
4、缓存集合
$smarty->display('模板的名称','值1|值2|值3')
5、局部不缓存
1、{$titlenocache}
2、{nocache}$title{/nocache}
6、清除缓存
clearCache('模板名称')
clearCache('模板名称',标志)
clearCache(null,标志)
clearAllCache()
7、讲Smarty集成到项目中
回顾(ThinkPHP部分)
1、ThinkPHP的优点
(1)快速、稳定、高效搭建程序
(2)可以使开发人员把精力集中在业务逻辑上,不需要关心程序的底层架构。
(3)可以节省大量代码
(4)便于后期维护
(5)有利于团队的代码风格统一
publicfunctionindex(){
//$this->display();
$this->display('other');
}
2、相关一些框架
zendframework
yii
ci
cakephp
thinkphp
一些重要的文件
Controller.class.php控制器的父类
Model.class.php模型的父类
View.class.php视图的父类
搭建ThinkPHP环境
define('APP_PATH','./Application/')自动新建Application文件夹,并把环境存放在此文件夹下。
require'./ThinkPHP/ThinkPHP.php';运行TP框架
创建控制器
1、存放位置:
Controller文件夹中
2、命名规范:
控制器的名称+Controller.class.php
3、类名和文件名同名
4、用帕斯卡命名法(大驼峰)
5、尽量区分大小写,
6、THinkPHP默认全部是UTF8编码
ThinkPHP的四种路由
1、普通模式
2、pathinfo模式
3、rewrite模式
4、兼容模式
默认是pathinfo模式
ThinkPHP的模板
1、存放在view文件夹下。
2、一个控制器对应一个文件夹,一个方法对应一个模板
系统常量
__SELF__:
当前路径
__MODULE__:
当前分组
__CONTROLLER__:
当前控制器
__ACTION__:
当前方法
__URL__等于__CONTROLLER__
ThinkPHP的开发模式
tp框架有两种使用模式:
开发模式(调试模式),一种是生产模式(运行模式)
define('APP_DEBUG',true);//调试模式
define('APP_DEBUG',FALSE);//运行模式
运行模式会把很多核心文件代码缓存成"common~runtime.php"文件,把原来每次需要加载许多文件的请求现在只要请求一个缓存文件,节省了很多文件的打开,关闭的开销。
在页面的底部显示日志信息
在配置文件中,添加如下配置
配置完成后,在浏览器的右下角会显示如下标记。
如果想看源码的话,在behavior文件夹下的ShowPageTraceBehavior.class.php
把ThinkPHP的引擎改成Smarty
smarty引擎的存放位置
smarty驱动
如果想更改Smarty的配置(一般不要改)
空操作
系统在找不到请求的方法的时候,会定位到__empty()方法处理,利用这个机制,我们可以对用户请求的不存在的所有操作进行统一处理。
空控制器
当系统请求找不到控制器,会定位到空控制器上EmptyController。
跨控制器调用
1、直接实例化
2、A()
A()用来实例化其他控制器的。
3、R()
R()和A()基本一样,唯一不同的是R()函数在实例化控制器的时候把操作方法一起传递过去,省略了方法的调用
TP框架的配置文件
惯例配置:
ThinkPHP/conf/convention.php
应用配置:
Application/Common/conf/config.php
调试配置:
Application/Common/conf/debug.php
模块配置:
Application/Home/conf/config.php
加载顺序
惯例配置->应用配置->调试配置->模块配置
优先级:
模块配置>调试配置>应用配置>惯例配置
C('配置的名称')用来获取配置信息。
判断
表达式中运算符
PHP运算符
对应的TP中的运算符
英文全称
<
lt
Lessthan
>
gt
Greaterthan
==
eq
equal
>=
egt
Equalorgreaterthan
<=
elt
循环
连接数据库
在配置文件中,做如上的配置,即可连接数据库
创建Model模型
把"Home/Model"文件夹剪切到Application文件夹下,让Home和Admin共同使用。
第一种实例化模型的方法
第二种实例化模型的方法
第三种实例化模型的方法
在tp3.2以后,M()和D()是一样的,在3.2之前版本中
M()类似于是newModel();
D('goods')类似于newGoodsModel():
提示:
我们可以看到goods表的信息,在GoodsModel中没有写代码,所有的业务逻辑都是Model类来实现的。
对表的操作
增加:
M('表名')->add($data);
删除:
M('表名')->delete($id);
更新:
M('表名')->save($data);
查询:
M('表名')->select();
普通查询(显示所有的商品)
1、GoodsController中的代码如下:
2、在模板中循环取出
3、获取一条记录
条件查询
having和where的区别
区别一:
where后面跟的字段必须在数据表中有
having后面跟的字段必须在数据集中有
区别二:
select*from表where条件groupby分组having条件
动态查询
getby+字段名
聚合函数
数据添加
1、通过关联数组的方法添加
2、通过AR(activerecord)方式来添加
数据修改
1、通过关联数组的方法
2、通过AR(activerecord)方式
数据删除
直接执行SQL语句
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ThinkPHP2