Smarty笔记 和20个常用的变量操作符
什么是Smarty变量操作符
php模板引擎smarty内置的一些操作函数,我们称之为变量操作符,变量操作符可用于操作变量,自定义函数和字符。(跟我PHP中常用的PHP内部函数类似)
他可以帮助我们完成很多比较实用的功能,如:首字母大写,拆分,替换,截取…更像是我们提前写好的一些PHP常用类...
如何使用Smarty变量操作符
语法中使用"|"应用变量操作符,多个参数用":" 分隔开来
例子:{$name|truncate:10:"..."}
截取前十个字符多则用...代替
介绍常用的20个常用变量符
capitalize [首字母大写]
count_characters [计算字符数]
cat [连接字符串]
count_paragraphs [计算段落数]
count_sentences [计算句数]
count_words [计算词数]
date_format [时间格式]
default [默认]
escape [转码]
indent[缩进]
lower[小写 ]
nl2br[换行符替换成<br />]
regex_replace[正则替换]
replace[替换]
spacify[插空]
string_format[字符串格式化]
strip[去除(多余空格)]
strip_tags[去除html标签]
truncate[截取]
upper[大写]
wordwrap[行宽约束]
例:{$name|capitalize}
实验
所有的变量符是在Smarty当中用的,在PHP中不能用。
在index.php中代码①、模版index.htm中代码②。
①.include('Smarty_inc.php');
$name = '欢迎大家来GT的空间';
$Smarty->assign('name',$name);
$Smarty->display('index.htm');
②.原是内容:{$name}</br>改变内容:{$name|cat:',PHP学习中~'}
{$name|capitalize}[首字母大写]
{$name|count_characters} [计算字符数] 可以判断发帖的个数不能超过多少字符等
{$name|cat:'参数'} [连接字符串] 防止采集可以加网站地址
{$name|count_paragraphs} [计算段落数] 按回车区分段落
count_sentences [计算句数] 用.来区分句数
count_words [计算词数]
$name = strtotime('-0');
{$name|date_format:%Y-%m-%d} [时间格式] 可以用Smarty内置变量:{$smarty.now|date_format:%Y-%m-%d}
{$name1|default:‘没有值’} [默认] $name1没有值现实的内容
$name = 'asdf<a href=aaa>sdf</a>';
{$name|escape:‘html’}escape [转码]html、url
html的转码,转换成字符串,不是连接,url的转码
{$name|indent:10:‘%nbsp’} [缩进] 缩进10个字符,缩进填充%nbsp
lower[小写 ]
nl2br[换行符替换成<br />]
regex_replace[正则替换]下回学习……
{$name|replace:'GT':‘**’}replace[替换] 违法国家的条例啊什么的可以屏蔽掉
spacify[插空]可以防止注入,可以加入一些字符
string_format[字符串格式化] %.2f 小数点后保留两位
strip[去除(多余空格)]
strip_tags[去除html标签]
truncate[截取] {$name|truncate:20:‘...’} 截取在Smarty里用,可快捷的换模板,在20个字符以后用...
upper[大写]
wordwrap[行宽约束]{$name|wordwrap:10:‘</br>’} 到10个字符自动换行,不用CSS控制
Smarty笔记 和20个常用的变量操作符的更多相关文章
- 十分钟能学会的框架,MVC+20个常用函数
LazyPHP(以下简称LP)是一个轻框架. 之所以开发这么一个框架,是因为其他框架给的太多.在高压力的情况下,ORM和盘根错节的对象树反而将简单的页面请求处理复杂化,在调试和性能上带来反面效果. L ...
- Flutter学习笔记(20)--FloatingActionButton、PopupMenuButton、SimpleDialog、AlertDialog、SnackBar
如需转载,请注明出处:Flutter学习笔记(20)--FloatingActionButton.PopupMenuButton.SimpleDialog.AlertDialog.SnackBar F ...
- smarty笔记
smarty 笔记display():把html包含进来然后用正则匹配php变量把匹配好的页面重新保存inclue载入刚才的保存的页面 1.smarty原理2.smarty安装3.smarty模板设计 ...
- JavaSE学习笔记(8)---常用类
JavaSE学习笔记(8)---常用类 1.Object类 java.lang.Object类是Java语言中的根类,即所有类的父类.它中描述的所有方法子类都可以使用.在对象实例化的时候,最终找的父类 ...
- Fortran学习笔记:01 基本格式与变量声明
Fortran学习笔记目录 01 基本格式与变量声明 格式 固定格式(Fixed Format):Fortran77 程序需要满足一种特定的格式要求,具体形式参考教材 自由格式(Free Format ...
- 常用shell变量$#,$@,$0,$1,$2等
常用shell变量$#,$@,$0,$1,$2的含义解释: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返 ...
- GetEnvironmentVariable 获取常用系统变量(转)
源:GetEnvironmentVariable 获取常用系统变量 //譬如 WINDIR 表示系统目录系统变量, 以这样获: var s:string; begin s:=GetEnvironmen ...
- Maya 常用环境变量详解
Maya 常用环境变量详解 前言: Maya 的环境变量让用户可以很方便的自定义 Maya 的功能. 在 Maya 的 Help 帮助文档中有专门的一个章节< Environment Varia ...
- cmake 常用变量和常用环境变量查表手册---整理 .
一,cmake 变量引用的方式: 前面我们已经提到了,使用${}进行变量的引用.在 IF 等语句中,是直接使用变量名而不通过${}取值 二,cmake 自定义变量的方式: 主要有隐式定义和显式定义两种 ...
随机推荐
- intelliJ IDEA中项目以jar包的形式导出
在上一篇中把intelliJ IDEA安装并配置完事后,我们就可以写scala程序了.编写完scala程序后我们要把程序导出,上传到服务器上,在spark集群下运行,下面就讲一下包的导出过程以及包在服 ...
- URAL 1097 Square Country 2 离散化
一共才100个正方形,将所有正方形左下角和右上角的X坐标和Y坐标离散化,直接枚举新建公园的点的坐标即可. O(n^3)的时间复杂度. #include <cstdio> #include ...
- javascript中 的 + RegExp['\x241'] 怎么理解
\x24是十六进制转义符,16*2+4=36,ASCII码36代表的正是“$”符号(可以查ASCII码表),十六进制转义符的一般形式是'\xhh',h是0-9或A-F内的一个.$1是javascrip ...
- git忽略文件【转】
转自: http://cwind.iteye.com/blog/1666646 有很多文件不必使用git管理.例如Eclipse或其他IDE生成的项目文件,编译生成的各种目标或临时文件等.使用git ...
- J2EE如何生成验证码图片和点击刷新验证码
验证码图片生成步骤 创建BufferedImage对象. 获取BufferedImage的画笔,即调用getGraphics()方法获取Graphics对象. 调用Graphics对象的setColo ...
- [androd] android的在线源码网站,各个版本都有(目前已到俺android 4.2,但不包含kernel部分的代码)
android的在线源码阅读网站,各个版本都有(目前最新版本已到android 4.2,但不包含kernel部分的代码) 这个网站最大的特点是:可以在网页上方的搜索框,搜索整个网站所存储的源码中的字符 ...
- R语言数据类型转换
test for data type is.numeric(), is.character(), is.vector(), is.matrix(), is.data.frame() convert i ...
- Lepus经历收获杂谈(一)——confirm features的小工具
------记Project of AIM_PointCloudTrainingManager------ ---------------------------------------------- ...
- hdu 5067 Harry And Dig Machine (状态压缩dp)
题目链接 bc上的一道题,刚开始想用这个方法做的,因为刚刚做了一个类似的题,但是想到这只是bc的第二题, 以为用bfs水一下就过去了,结果MLE了,因为bfs的队列里的状态太多了,耗内存太厉害. 题意 ...
- noi2015的回忆和教训
前几天偶然打开了bzoj的rank list,突然发现——我竟然掉出了第一版!!! 自从我5月还是6月刷进第一版之后,我曾经天真的以为大概半年之内我还能保留在第一版内吧. 结果仅仅短短的4个月,我就已 ...