什么是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个常用的变量操作符的更多相关文章

  1. 十分钟能学会的框架,MVC+20个常用函数

    LazyPHP(以下简称LP)是一个轻框架. 之所以开发这么一个框架,是因为其他框架给的太多.在高压力的情况下,ORM和盘根错节的对象树反而将简单的页面请求处理复杂化,在调试和性能上带来反面效果. L ...

  2. Flutter学习笔记(20)--FloatingActionButton、PopupMenuButton、SimpleDialog、AlertDialog、SnackBar

    如需转载,请注明出处:Flutter学习笔记(20)--FloatingActionButton.PopupMenuButton.SimpleDialog.AlertDialog.SnackBar F ...

  3. smarty笔记

    smarty 笔记display():把html包含进来然后用正则匹配php变量把匹配好的页面重新保存inclue载入刚才的保存的页面 1.smarty原理2.smarty安装3.smarty模板设计 ...

  4. JavaSE学习笔记(8)---常用类

    JavaSE学习笔记(8)---常用类 1.Object类 java.lang.Object类是Java语言中的根类,即所有类的父类.它中描述的所有方法子类都可以使用.在对象实例化的时候,最终找的父类 ...

  5. Fortran学习笔记:01 基本格式与变量声明

    Fortran学习笔记目录 01 基本格式与变量声明 格式 固定格式(Fixed Format):Fortran77 程序需要满足一种特定的格式要求,具体形式参考教材 自由格式(Free Format ...

  6. 常用shell变量$#,$@,$0,$1,$2等

    常用shell变量$#,$@,$0,$1,$2的含义解释: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返 ...

  7. GetEnvironmentVariable 获取常用系统变量(转)

    源:GetEnvironmentVariable 获取常用系统变量 //譬如 WINDIR 表示系统目录系统变量, 以这样获: var s:string; begin s:=GetEnvironmen ...

  8. Maya 常用环境变量详解

    Maya 常用环境变量详解 前言: Maya 的环境变量让用户可以很方便的自定义 Maya 的功能. 在 Maya 的 Help 帮助文档中有专门的一个章节< Environment Varia ...

  9. cmake 常用变量和常用环境变量查表手册---整理 .

    一,cmake 变量引用的方式: 前面我们已经提到了,使用${}进行变量的引用.在 IF 等语句中,是直接使用变量名而不通过${}取值 二,cmake 自定义变量的方式: 主要有隐式定义和显式定义两种 ...

随机推荐

  1. 10 signs you’re dating the wrong person

    10 signs you’re dating the wrong person10个迹象表明TA不是你的真心人       Do you have any exes who were so awful ...

  2. java jms

    这篇博文我们主要介绍J2EE中的一个重要规范JMS,因为这个规范在企业中的应用十分的广泛,也比较重要,我们主要介绍JMS的基本概念和它的模式,消息的消费以及JMS编程步骤. 基本概念 JMS是java ...

  3. 【web性能】js应该放在html页面的什么位置

    所有浏览器在下载JS的时候,会阻止一切其他活动,比如其他资源的下载,内容的呈现等等.至到JS下载.解析.执行完毕后才开始继续并行下载其他资源并呈现内容.   外部JS的阻塞下载 所有浏览器在下载JS的 ...

  4. [iOS]利用系统NSRegularExpression使用正则表达式

    // Created by 李东旭 on 16/1/22. // Copyright © 2016年 李东旭. All rights reserved. // #import <UIKit/UI ...

  5. Spring MVC配置DispatcherServlet的url-pattern

    在配置Spring MVC的核心过滤器DispatcherServlet的url-pattern时是有要求的. <servlet> <servlet-name>...</ ...

  6. 269. Alien Dictionary

    题目: There is a new alien language which uses the latin alphabet. However, the order among letters ar ...

  7. 使用shell查看局域网中主机的IP地址

    此脚本只是快速查看所在局域网中其它主机的IP地址,如果对方设置了禁ping,则无法显示出此主机的IP地址: #!/bin/bash ` do ping -c2 .$i &>/dev/nu ...

  8. linux下jdk安装 failed /usr/local/jdk1.6.0_10/jre/lib/i386/client/libjvm.so

    今天在fedora core 4下面安装jdk1.6后,运行java -version,没有出现相关的版本信息,而是出现了以下错误: dl failure on line 685Error: fail ...

  9. Matlab绘图高级部分

    图形是呈现数据的一种直观方式,在用Matlab进行数据处理和计算后,我们一般都会以图形的形式将结果呈现出来.尤其在论文的撰写中,优雅的图形无疑会为文章加分.本篇文章非完全原创,我的工作就是把见到的Ma ...

  10. 基于EntityFramework的权限的配置和验证

    1.   概要 本文主要介绍公司现有系统框架的权限体系,和一些待扩展功能的说明.目前该权限体系基于角色构建(RBAC),原则上,系统中不允许出现对用户.组织等其他对象指派权限的情况. 2.   权限分 ...