什么是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控制