1、 一个页面一个缓存
2、 一个页面多个缓存(分页)
3、 局部关闭缓存(实时性)
缓存目的:
Php文件:解决功能上的问题(M+C)
提供数据
Html文件:界面效果(V)
缓存的配置步骤
1) 配置文件中开启缓存
$tpl->caching=2
缓存时间单位为秒
缓存目录
2)$tpl->display(“index.tpl”);
相当于把(编译后的文件产生的)静态页面只保留一份儿;
其他内容不被保存
$tpl->display(“index.tpl”,名称);
相当于把(编译后的文件产生的)静态页面根据名称保留多份儿;
例如:$tpl->display(“index.tpl”,1);
$tpl->display(“index.tpl”,$_GET[‘page’]);
$tpl->display(“index.tpl,$_SERVER[‘REQUSET_URI’]);第二个参数设置合理直接影响到缓存
全部被缓存会无法更新
2) 登陆用户名、时间日期等实时性要求比较高需要关闭缓存
1、<{insert}>关闭缓存
*.Php
Function insert_XXX(){}
*.tpl
<{insert name=XXX assign=XXX}>引用时不用加前缀
2、 写插件è应用最多->(照原样显示)不支持自定义函数
./plugins/block.XXX.php
Function smarty_block_XXX(){}
Smarty_complier.class.php
712行
True---false
If($tag_command==XXX){……false}
Else{……………………………true}
3、自定义函数
*.php
Function XXXX(){}第三个出现,此插件不缓存
$tpl->register_block(“,”””,false)
模板文件
<{XXX}> <{$DATE}> <{XXX}>区块之间的内容(随时都在变)是不被缓存的
导入数据库
Smarty案例---新闻管理系统
1、创建数据库
1)进入mysql环境
Mysql>CREATE DATABASE new;
New.sql保存到data目录下
2)c:>mysql-u用户名( root) –p密码 new<d:\wamp\mysql\mysql*\data\new.sql
项目需求分析
1、采用的技术---smarty
MVC
2、搭建的开发环境---wamp
目录介绍
文件与文件之间的关系
每个文件解决的问题
3、功能介绍---PHP(M+C)
M:处理方法
C:条件
4、界面----TPL(V)
美工:这是模板
功能模块儿:MVC(不是整个项目分成M V C )
要求功能完善、独立
用户管理(添加用户、退出、管理用户等)
新闻管理(增删等、分类、分页)
C
登陆
2、php文件也单独保存一个文件
<?php
条件与操作分开
If(用户名==zhangsan){满足条件找a.php文件
进行(2+4)运算;
给该用户增加积分------a.php
。。。
}else{
给其他用户。。。---------b.php(同上)
。。。
}
?>
<form>…
1、先把html取出当做模板
Html标签单独保存一个文件
所有c当中的文件
If(){location}
Elseif(){location}
Else{location}
M中
./m/a.php(执行操作)