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 自定义变量的方式: 主要有隐式定义和显式定义两种 ...
随机推荐
- 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 ...
- java jms
这篇博文我们主要介绍J2EE中的一个重要规范JMS,因为这个规范在企业中的应用十分的广泛,也比较重要,我们主要介绍JMS的基本概念和它的模式,消息的消费以及JMS编程步骤. 基本概念 JMS是java ...
- 【web性能】js应该放在html页面的什么位置
所有浏览器在下载JS的时候,会阻止一切其他活动,比如其他资源的下载,内容的呈现等等.至到JS下载.解析.执行完毕后才开始继续并行下载其他资源并呈现内容. 外部JS的阻塞下载 所有浏览器在下载JS的 ...
- [iOS]利用系统NSRegularExpression使用正则表达式
// Created by 李东旭 on 16/1/22. // Copyright © 2016年 李东旭. All rights reserved. // #import <UIKit/UI ...
- Spring MVC配置DispatcherServlet的url-pattern
在配置Spring MVC的核心过滤器DispatcherServlet的url-pattern时是有要求的. <servlet> <servlet-name>...</ ...
- 269. Alien Dictionary
题目: There is a new alien language which uses the latin alphabet. However, the order among letters ar ...
- 使用shell查看局域网中主机的IP地址
此脚本只是快速查看所在局域网中其它主机的IP地址,如果对方设置了禁ping,则无法显示出此主机的IP地址: #!/bin/bash ` do ping -c2 .$i &>/dev/nu ...
- 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 ...
- Matlab绘图高级部分
图形是呈现数据的一种直观方式,在用Matlab进行数据处理和计算后,我们一般都会以图形的形式将结果呈现出来.尤其在论文的撰写中,优雅的图形无疑会为文章加分.本篇文章非完全原创,我的工作就是把见到的Ma ...
- 基于EntityFramework的权限的配置和验证
1. 概要 本文主要介绍公司现有系统框架的权限体系,和一些待扩展功能的说明.目前该权限体系基于角色构建(RBAC),原则上,系统中不允许出现对用户.组织等其他对象指派权限的情况. 2. 权限分 ...