2022年Smarty入门教程 2.pdf

上传人:Che****ry 文档编号:27267619 上传时间:2022-07-23 格式:PDF 页数:4 大小:55.84KB
返回 下载 相关 举报
2022年Smarty入门教程 2.pdf_第1页
第1页 / 共4页
2022年Smarty入门教程 2.pdf_第2页
第2页 / 共4页
点击查看更多>>
资源描述

《2022年Smarty入门教程 2.pdf》由会员分享,可在线阅读,更多相关《2022年Smarty入门教程 2.pdf(4页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、PHP 模板引擎Smarty 的配置以及变量操作符、内置函数和缓存的使用一: PHP 模板引擎Smarty 的配置1.什么是 Smarty:Smarty 是一个使用PHP 写出来的PHP 模板引擎,目的是要使PHP程序同美工分离,使得程序员改变程序的逻辑内容时不会影响到美工的页面设计,美工重新修改页面时不会影响的PHP 的程序逻辑, 这在多人合作的项目中显得尤为重要。也有利于程序的多样式开发。2.Smarty 的优点:A:速度快,相对于其他模板引擎来说,Smarty 是 速 度较快的;B:编译型,使用Smarty 技术编写的程序运行时需要生成一个非模板技术的PHP文件;C:缓存技术, Smar

2、ty 可以将用户最终看到的html 缓存成一个静态的html 页面;D:插件技术,使用Smarty 可以自定义插件;3.不适合使用Smarty 的地方:在有些系统开发时就可能不能使用Smarty 技术,比如说需要实时更新的内容、或者是一些小的项目,只需要一个人就可以搞定的项目。4.Smarty 模板引擎的配置:因为 Smarty 是一个模板引擎,因此,如果要使用它则首先必须正确的配置这个模板引擎。 配置文件的名字可以根据自己的需要自己定义,只要的 PHP 文件中将这个配置文件include 进来即可。但是配置文件的内容大同小异,大致应该包括如下部分内容。A:必须将Smarty 的类文件包含到配

3、置文件中;B:实例化Smarty 的类。只有将Smarty 类实例化才能进一步使用里面的内容。C:Smarty 的配置信息,包括目录变量、是否使用缓存、模板目录、缓存目录、编译目录、左右边界符等。下面是一个Smarty 模板引擎的配置文件,可做参考:include_once(Smarty/Smarty.class.php); / 包含 smarty 类文件$smarty = new Smarty(); /建立 smarty 实例对象 $smarty$smarty-config_dir=Smarty/Config_File.class.php; / 目录变量$smarty-caching=fal

4、se; /是否使用缓存,项目在调试期间,不建议启用缓存$smarty-template_dir = ./templates; /设置模板目录$smarty-compile_dir = ./templates_c; /设置编译目录$smarty-cache_dir = ./smarty_cache; /缓存文件夹/左右边界符,默认为,但实际应用当中容易与JavaScript 相冲突$smarty-left_delimiter = ; $smarty-right_delimiter = ; 5.Smarty 模板引擎的入门使用:A:模板中使用的变量的声明:$smarty-assign(模板变量 ,

5、 值(数组 /变量 ); $smarty-display( 模板名称 ); 例如:$smarty-assign(name, PHP100 中文站 ); /进行模板变量替换$smarty-display(index.htm); / 该文件就是模板文件,应该在模板目录下名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - B:模板中如何使用变量:假设index.htm $name 这样,就可以将index.php 中定义的模板变量使用了!

6、6.循环的使用: Smarty 中内置的section 方法可以帮助我们循环数组。其他的不建议使用 section 方法。例如:section name=s loop=$stu $stus.name sectionelse 无内容/section 其中, s 是循环的名称,可以自定义。loop 指定的是需要循环的数组变量;二: PHP 模板引擎Smarty 的变量操作符的用法:1.什么是 Smarty 的变量操作符:变量操作符是PHP 模板引擎Smarty 内置的一些操作函数,变量操作符可以用于操作变量、自定义函数和字符。与PHP 常用的 PHP 内置函数相似。变量操作符可以帮助我们完成很多实

7、际测功能,例如首字母大写、字符拆分等等等等。2.如何使用 Smarty 的变量操作符:语法中使用“ |”应用变量操作符,多个参数之间使用“:”隔开!例如:$name|truncate:10: , /截取前十个字符,剩余字符使用省略号代替,/默认是空格代替。3.PHP 模板引擎Smarty 中常用的20 个变量操作符:Smarty 模板变量作用capitalize 首字母大写Count_characters 计算字符个数Cat 连接字符串Count_paragraphs 计算段落数Count_sentences 计算段落数Count_words 计算单词数Date_formate 时间格式Def

8、ault 默认,设置变量未定义时的默认显示Escape 转码Indent 缩进Lower 所有字母转换成小写Upper 所有字母转换成大写Nl2br 将换行符转换成 Regex_replace 正则替换Replace 替换Spacify 插如空格String_formate 字符串格式化Strip 去除多余空格Strip_tags 去除 html 标签Truncate 截取Wordwrap 行宽约束表格1 Smarty 中常用的变量操作符名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第

9、 2 页,共 4 页 - - - - - - - - - 三: PHP 模板引擎Smarty 的内置函数:1.foreach 的数组处理:与 PHP 中的 foreach 功能一样, Smarty 中的 foreach 的作用也是用于处理数组。在实际操作中与section 的功能是一样的,在Smarty 中, foreach 一般用于处理一维数组。语法如下:foreach key=key item=value from =“目标数组” 数组键值是:$key 对应的值是: $value /foreach 其中,key 指定的是通过什么变量来访问数组的键值,item 指定访问数组值的变量。对于没有

10、键值的数组(非关联数组)如不需访问键值可以省略key 参数;2.include 的多功能使用:同样,在Smarty 中, include 函数也是用于加载已经存在的文件,但是,其功能更加强大,包括可以访问服务器上的绝对路径等。语法如下三种:A:include file=” header.htm” /最简单的用法,与PHP 中的用法类似B: include file=” D:wwwindex.htm ” /可以访问绝对路径C: include file=” head.htm” title=” Hello world ! ” /将 title 替换成 hello world !3.if 条件语句的

11、使用:if 条件判断句的语法跟PHP 一样,只是写法上有点区别。语法如下:if $name=” true” /满足第一个条件elseif /满足第二个条件else /两个条件都不满足/if 4.literal 、strip 文本的处理技巧:1.literal 的作用:放在literal 语句块中的数据将会被当成普通文本执行。例如在htm 模板文件中直接写了JavaScript 代码,由于js 代码中的函数之类的东西用到大括号, Smarty 会报错。这样的话就可以这样写:literal Function aaa() Alert( “ 你好 ” ); /literal 程序这样写的话,Smart

12、y 模板就会将这段js 代码当成文本执行。2.strip 的作用:这个函数的作用是将html 代码中的空格和回车全部去除,这样一来可以防止多余的空格或换行当值页面扭曲,还可以防止他人盗用页面的设计源代码。四: PHP 模板引擎Smarty 的缓存的使用1.Smarty 缓存的配置:Smarty 模板配置缓存可以指定三个选项,即是否打开缓存、缓存存放目录和缓存时间。默认缓存时间是?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 4 页 - - - - - - - - - 例

13、如:$smarty-cache_dir = /caches/; /缓存目录$smarty-caching = true; /开启缓存 ,为 flase 的时侯缓存无效$smarty-cache_lifetime = 60; /缓存时间2.Smarty 缓存的使用和清除:$smarty-display(cache.tpl, cache_id); /创建带 ID 的缓存$smarty-clear_all_cache(); /清除所有缓存$smarty-clear_cache(index.htm); /清除 index.tpl 的缓存$smarty-clear_cache(index.htm,cac

14、he_id); /清除指定id 的缓存3.Smarty 局部缓存:实际开发中有很多信息不能使用缓存(需要实时更新,例如股票显示!) ,这是可以使用以下两种办法解决。A:使用 insert 方法: index.php Function insert_get_time() Return date(“ Y-m-d H:i:s ” ); $smarty-display( “ index.htm ” ); Index.htm /模板文件insert name= ” get_time” /不会被缓存B:smarty_block 函数功能更加强大。用法同上。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 4 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com