Smarty 变量修饰器
为了更方便的实现 功能与显示分离,通常会用 smarty 将功能代码中的数据 assign 到页面中,在页面中合理使用 smarty 的修饰方法,会使页面显示更美观!
一个数据可同时使用多个修饰函数,通过管道符 “|” 分割,例: {$val|escape:"html"|replace:"\n":"<br/>"}
$smarty.now 取得当前时间
|
功能 |
修饰符 | 参数 | 备注 |
| 默认 |
default |
:“xxx”(默认值) | |
| 时间格式化 | date_format | :”%Y-%m-%d”(时间格式) |
%a、%A 星期;%b、%h、%B 月份;%c 日期时间;%C 世纪值; %d、%e 月份中的第几天;%D 和 %m/%d/%y 一样; %g、%G、%y、%Y 年份;%H、%I、%k、%l 小时;%j 年份中的第几天; %m 月份;%M 分钟;%p 上下午;%r 、%R 有上下午符号;%S 秒; %T 当前时间;%u 星期;%U、%V、%W 本年的第几周; %x 日期;%X 时间;%Z 时区名;%n 换行符;%% `%' 字符; |
| 数字格式化 |
number_format |
:小数位数:小数分隔符:千分位分隔符(不设参数则为默认值) | |
| 字符串格式化 |
string_formate |
:“%.2f” (字符串格式) | %.2f 两位小数;%d 整数; |
| 截取字符串 |
truncate |
:开始截取位置:截取后的替代字符串:true 按照单词截取 | 例:($val|truncate:3:"...":true) |
| 替换所有重复空格,换行和制表符 |
strip |
:“ ”(替换成的字符) | 如果是空字符则必须也要写成"",不能不带参数 |
| 过滤字符串中标签 |
strip_tags |
||
将字符串中的\n替换成<br/> |
nl2br |
||
| 字母转成小写 |
lower |
||
| 字母转成大写 |
upper |
||
| 单词首字母大写 |
capitalize |
单词加数字不会被识别 | |
| 计算字符数 |
count_characters |
不包括空格和其他特殊字符,UTF-8中一个字母字符占3个长度 | |
| 连接字符串 |
cat |
:“str”(连接的字符串) | 只能连接1个 |
| 计算段落数 |
count_paragraphs |
回车或者\r\n的换行计算在内,<br>的不计算在内 | |
| 计算句子数 |
count_sentences |
判断字符串有几个"."就为几个句子,"。"不包括在内,且点号后面要有一个空格才算一个句子 | |
| 计算单词数 |
count_words |
字母,数字,或字母加数字的组合,在两个空格之间算一个单词 | |
| 编码或转义变量 | escape | :html:ISO-8859-1 |
参数一: 参数二: |
| 解码entity, html 和 htmlall等的编码 | unescape |
与escape 修饰器的效果刚好相反 |
|
| 缩进的字符 | indent | :缩进个数:缩进字符 |
例:{$str|indent:4:" "}表示缩进4个字符,字符用空格代替 |
| 字符替换 | replace | :"需要替换的":"替换的" |
区分大小写 |
| 每个字符之间插入空格或者其他的字符 |
spacify |
:“插入的字符” | |
|
行宽约束 |
wordwrap | :行宽:识别字串:false 词完整 | 参数一默认为 80;参数二默认为 \n;参数三默认为 false,及约束到词边界 |
|
使用正则表达式搜索替换变量 |
regex_replace | :被替换的正则:使用该字串替换 |
例:{$articleTitle|regex_replace:"/[\r\t\n]/":" "}
|
|
转换变量到内置字符集 |
from_charset | :需要转换的字符集名称 |
|
|
将变量转换到指定字符集 |
to_charset | :转换到的字符集类型 |
|
Smarty 变量修饰器的更多相关文章
- Smarty3——变量修饰器
变量修饰器可以用于变量, 自定义函数或者字符串. 使用修饰器,需要在变量的后面加上|(竖线)并且跟着修饰器名称. 修饰器可能还会有附加的参数以便达到效果. 参数会跟着修饰器名称,用:(冒号)分开. 同 ...
- Smarty3——复合变量修饰器输
你可以联合使用多个修饰器. 它们会按复合的顺序来作用于变量,从左到右. 它们必须以| (竖线)进行分隔,以‘:’号设置参数 {$articleTitle} {$articleTitle|upper|s ...
- Smarty 变量使用
Smarty的标签都是使用定界符括起来. 默认定界符是{ 和 }, 但定界符可以被改变. 比如说在本手册,我们会假定你在使用默认的定界符. 在Smarty看来,任何在定界符之外的内容,都是静态的,或者 ...
- smarty变量调节器与函数
smarty自带了一些变量调节器与内置函数,都在libs/plugins目录下,变量调节器以modifier开头,函数以function开头,而且我们可以自定义变量调节器与函数,熟练运用之后会极大地提 ...
- smarty变量调节器
smarty中变量调解器的作用:在模板中需要对PHP分配过来的变量在输出之前,对变量进行处理 注册变量调解器方式:$smarty->registerPlugin("modifier&q ...
- Python修饰器的函数式编程
Python的修饰器的英文名叫Decorator,当你看到这个英文名的时候,你可能会把其跟Design Pattern里的Decorator搞混了,其实这是完全不同的两个东西.虽然好像,他们要干的事都 ...
- Python修饰器
Python的修饰器的英文名叫Decorator,当你看到这个英文名的时候,你可能会把其跟Design Pattern里的Decorator搞混了,其实这是完全不同的两个东西.虽然好像,他们要干的事都 ...
- Python_@修饰器(装饰器)的理解
装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能. 装饰器的作用就是为已经存在的对象添加额外的功能. def funA(fun): print (fun( ...
- GLSL ES 中的存储变量修饰符(const/attribute/uniform/varying/in/centroid in/out/centroid out)
GLSL ES 3.00 中支持的存储变量修饰符 变量名称 作用 示例 const 编译过程常量,或者函数的只读参数 const vec3 zAxis = vec3 (0.0, 0.0, 1.0); ...
随机推荐
- DRF跨域,简单请求和复杂请求
跨域就是跨域名,跨端口 - 为什么会有跨域? 浏览器有同源限制策略 - 绕过浏览器同源策略就可以跨域 - 方式一: jsonp(利用浏览器特性) 在html动态创建script标签 同源策略会阻止a ...
- 【Codeforces 1110D】Jongmah
Codeforces 1110 D 题意:给\(n\)个麻将,每个麻将上有一个\(1..m\)的整数\(a_i\). 现在要将这些麻将们分成一个一个三元组,有两种情况: \([i-1,i,i+1]\) ...
- 如何扩展32位EXE程序的使用内存
1 运行Visual studio的命令行,执行下面命令:editbin /LARGEADDRESSAWARE “C:\Program Files\Skyline\TerraExplorer Pro\ ...
- 玩转 ”hello word“,Python程序员大多数都没有实现过
很多人学习Python很长时间,对于'hello word' 的认知,很多已经从事Python多年的程序员的认知也就只有: print(hello wrod) 但是有没有让hello word 变得不 ...
- Ionic App 启动时报Application Error - The connection to the server was unsuccessful
最近在更新App的时候,发现在华为手机上报这个错误,有点困惑,查找资料分析,大概原因是程序在加载index.html网页时,加载的资源过多,造成时间超时, 这个时原因分析https://stackov ...
- BootStrap学习(7)_轮播图
一.轮播图 Bootstrap 轮播(Carousel)插件是一种灵活的响应式的向站点添加滑块的方式.除此之外,内容也是足够灵活的,可以是图像.内嵌框架.视频或者其他您想要放置的任何类型的内容. 如果 ...
- EXPERT FOR SQL SERVER诊断系列--索引
概述 索引设计是数据库设计中比较重要的一个环节,对数据库的性能起着至关重要的作用,但是索引的设计却又不是那么容易的事情,性能也不是那么轻易就获取到的,很多的技术人员因为不恰当的创建索引,最后使得其 ...
- Windows环境下实现Consul服务注册和服务发现
1.首先从官方网站下载Consul,因为我们是使用的Windows系统,所以选择windows版本 https://www.consul.io/downloads.html 2.可以用开发者模式来启动 ...
- PHP 文件写入和读取(必看篇)
文章提纲: 一.实现文件读取和写入的基本思路 二.使用fopen方法打开文件 三.文件读取和文件写入操作 四.使用fclose方法关闭文件 五.文件指针的移动 六.Windows和UNIX下的回车和换 ...
- JS中的跨域问题
一.什么是跨域? 1.定义:跨域是指从一个域名的网页去请求另一个域名的资源.比如从www.baidu.com 页面去请求 www.google.com 的资源.但是一般情况下不能这么做,它是由浏览器的 ...