Smarty模板技术在商城中的应用.ppt
《Smarty模板技术在商城中的应用.ppt》由会员分享,可在线阅读,更多相关《Smarty模板技术在商城中的应用.ppt(21页珍藏版)》请在三一办公上搜索。
1、PHP+MySQL动态网页技术教程,第11章 Smarty模板技术 在商城中的应用,11.1 项目导引:图书显示模块,在前面章节,用户登录注册、商品管理和购物车管理等模块的开发,采用PHP代码和HTML代码混合编写模式,但是在许多公司中,界面设计者和程序设计者往往是分开的,也就是说PHP代码和HTML代码是由不同角色编写的,这就要求程序中PHP代码和HTML代码采用分离的编写模式,那么,如何实现分离编写呢?于是,Smarty模板解决方案就产生了。本章的项目是基于Smarty技术完成图书显示模块的开发,那么什么是Smarty模板?Smarty模板该如何使用呢?,11.2 项目分析,Smarty模
2、板是一个使用PHP编写的PHP模板引擎,它将一个应用程序分成了用户界面和程序逻辑两部分,从而使程序员和美工各自扮演不同的角色,负责不同的任务,美工负责页面的显示,程序员负责程序逻辑的处理,这体现了分层的程序开发思想。基于Smarty的图书显示程序,需要将程序分成两个页面,Smarty程序页面和Smarty模板页面。过去我们一个页面就可以实现图书显示,而现在要强制性的把程序分成两部分,Smarty程序页面负责从数据库中提取和处理图书信息,Smarty模板页面则组合使用HTML标记和模板标记去控制图书信息的显示。这样做的优点是,程序员改变程序的逻辑不会影响到页面显示,同样,美工改变页面的显示风格也
3、不会影响到程序的逻辑。,11.3 技术准备,11.3.1 Smarty程序设计1Smarty程序设计中的变量模板目录变量($template_dir)编译目录变量($compile_dir)配置目录变量($config_dir)缓存变量($caching)缓存目录变量($cache_dir)缓存有效期变量($cache_lifetime),11.3 技术准备,11.3.1 Smarty程序设计2Smarty程序设计中方法assign()方法assign()方法用于为模板变量赋值。语法格式如下:void assign(string varname,mixed var)参数varname表示被赋值
4、的模板变量的名称,参数var是赋给变量的值。display()方法display()方法用于显示指定模板。语法格式如下:void display(string template,string cache_id,string compile_id)参数template表示模板资源的类型和路径,参数cache_id用于指定缓存号,参数compile_id用于指定编译号。,11.3 技术准备,11.3.2 Smarty的安装配置1.Smarty的安装2.Smarty的配置确定Smarty类库的存储位置,包含类文件,然后进行实例化,只有实例化之后才能调用类里面的属性和方法。include_once(s
5、marty/Smarty.class.php);/包含smarty类文件$smarty=new Smarty();/建立smarty实例对象$smarty新建templates、templates_c和smarty_cache 3个文件夹,分别用于存放模板文件、编译文件和缓存文件。目录创建好之后,需要设置Smarty对象中的$template_dir、$compile_dir、$cache_dir属性,指明模板文件夹、编译文件夹和缓存文件夹的位置。$smarty-template_dir=./templates;/设置模板目录位置$smarty-compile_dir=./templates_
6、c;/设置编译目录位置$smarty-cache_dir=./smarty_cache;/设置缓存目录位置,11.3 技术准备,11.3.2 Smarty的安装配置2.Smarty的配置通过设置$caching属性可以设置Smarty是否启用缓存,其值为ture表示启用缓存,值为false表示关闭缓存。项目在调试期间,不建议启用缓存,发布时启用缓存。配置代码如下:$smarty-caching=false;/关闭缓存配置Smarty时还需要定义在模板文件中编写Smarty代码的左右边界符,通过设置$left_delimiter和$right_delimiter属性可以设置左右边界符,边界符通常
7、使用#、或,也可以组合使用。配置代码如下:$smarty-left_delimiter=;/左边界符设为$smarty-right_delimiter=;/右边界符设为3Smarty的简单应用,11.3 技术准备,11.3.3 Smarty模板设计1Smarty的内建函数include包含函数include函数用于在当前模板中包含其它模板,当前模板中的变量在被包含的模板中可用。函数语法格式如下:include file=file_name assign=var=参数file为必选参数,用于指定包含模板文件的名称;参数assign用于指定一个变量保存包含模板的输出;参数var用于传递给待包含模板
8、的本地参数,它只在待包含模板中有效。,11.3 技术准备,11.3.3 Smarty模板设计1Smarty的内建函数foreach循环控制Smarty模板中的foreach语句可以循环输出数组,一般用来处理一维数组。语法格式如下:foreach name=foreach_name key=key item=item from=arr_name./foreach参数name为循环的名称,key为当前数组的键值,item为当前元素的变量名,from为该循环的数组,其中item和from为必选参数,不可省略。例11-1,11.3 技术准备,11.3.3 Smarty模板设计1Smarty的内建函数s



- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Smarty 模板 技术 商城 中的 应用

链接地址:https://www.31ppt.com/p-6519522.html