symfony中twig的模板过滤器
过滤器
变量可以被过滤器修饰。过滤器和变量用(|)分割开。过滤器也是可以有参数的。过滤器也可以被多重使用。
通用过滤器
date过滤器
1.1版本新增时区支持,1.5版本增加了默认的日期格式。
格式化时间,这个过滤器和php的date函数无限类似,可处理与 strtotime 兼容的字符串,或 DateTime/DateInterval 的实例,可选的第二个参数用于指定时区,如果所修饰的数据为空则默认为当前时间
{{ article.publishedTime|date(‘Y-m-d H:i:s’) }}
输出: 2014-7-12 12:11:11
format过滤器
和php的printf函数一样,用来替换占位符
<span class=”days”>
{{ “%02d”|format(countdown.days) }}
</span>天
输出: 12天
replace过滤器
{{ “教师可在直播开始前%hour%小时内进入直播教室,以准备相关教学资料.”
|replace({‘%hour%’: hour}) }}
输出: 教师可在直播开始前1小时内进入直播教室,以准备相关教学资料.
number_format过滤器
他是php函数 number_format的一个包装 直接见函数参考php函数 number_format吧
<span class=”rating-num”>
{{ course.rating|number_format(1) }}分
</span>
输出: 5分
url_encode过滤器
编码链接字符串,等同于php函数urlencode
{{ data|url_encode() }}
json_encode过滤器
编码JSON格式,等同于php函数json_encode
{{ data|json_encode() }}
convert_encoding过滤器
编码转换,第一个参数指定转换后的编码,第二个参数指定转换前的编码,本函数依赖于iconv 或者mbstring 所以至少需要安装一个
{{ data|convert_encoding(‘UTF-8’, ‘iso-2022-jp’) }}
title过滤器
将字符串中每个单词的首字母大写,等同于 ucwords
{{ ‘my first car’|title }}
输出: My First Car
capitalize过滤器
将字符串的首字母大写,其余字母小写的格式,等同于 ucfirst
{{ ‘my first car’|capitalize }}
输出: My first car
nl2br过滤器
将字符串里的 \n 替换成 <br/>
{{ “I like Twig.\nYou will like it too.”|nl2br }}
输出:
I like Twig. <br />
You will like it too.
join过滤器
将数组的各个元素按指定分隔符组成字符串
{{ [1, 2, 3]|join }}
输出: 123
{{ [1, 2, 3]|join(‘|’) }}
输出: 1|2|3
reverse 过滤器
反转一个数组,或者是一个实现了Iterator接口的对象,在 array_reverse 的基础上增加了对字符串的处理
{% for use in users|reverse %}
…
{% endfor %}
length过滤器
返回一个数组或者字符串的长度,等同于 count 和 strlen 的结合体
{% if users|length > 10 %}
…
{% endif %}
sort过滤器
对数组排序
{% for use in users|sort %}
…
{% endfor %}
keys过滤器
将数组的全部键名提取成一个数组,等同于 array_keys
{% for key in array|keys %}
…
{% endfor %}
escape过滤器
将字符串安全地处理成合法的指定数据,支持多种转换模式,默认模式为 html,其他可选模式有 html_attr、js、css、url,主要转义 & < > ‘ ” 。并且它有个简写方式 e。
{{ user.username|escape }}
{{ user.username|e }}
raw过滤器
用于在autoescape标签内部,标记出不需要转义的内容。
<div class=”thread-body”>
{{article.body |raw }}
</div>
merge过滤器
用来合并数组,近似于 array_merge 。如 {{ 数组1|merge(数组2) }}
{% set items = { ‘id’:course.id} %}
{% set items = items|merge({type:’all’}) %}
symfony中twig的模板过滤器的更多相关文章
- symfony中twig的模板载入
模板 载入模板 {% include ‘sidebar.html’ %} 当前模板的变量也会传递到 被include的模板里,在那里面可以直接访问你这个模板的变量. {% for comment in ...
- symfony中twig的模板变量与注释
程序会传递给模板若干变量,你需要在模板里输出他们.例如输出$hello .1{{ hello }}.如果传递给模板的是对象或者数组,你可以使用点. 来输出对象的属性或者方法,或者数组的成员.或者你可以 ...
- symfony中twig的流程控制if,for用法
流程控制 if 语句 if语句在twig中的作用如同if语句在PHP中的一样.1.你可以通过下面这个简单的例子来判断表达式的结果是否正确. {% if online == false %} <p ...
- Django模板过滤器详解
Django 模板过滤器也是我们在以后基于 Django 网站开发过程中会经常遇到的,如显示格式的转换.判断处理等.以下是 Django 过滤器列表,希望对为大家的开发带来一些方便. 一.形式:小写 ...
- Django框架之【自定义模板过滤器与标签】
本文在我的微信公众号的链接:https://mp.weixin.qq.com/s?__biz=MzU5NTU5MjcwNw==&mid=2247483674&idx=1&sn= ...
- Django框架基础知识03-模板变量及模板过滤器
模板变量及模板过滤器. 1.模板路径的查找 -查找顺序 1.尝试,在app目录下存放模板. -两种方案 1.app项目文件夹下存放. 2.templates文件夹下分类存放. 首先查找项目settin ...
- django-5-自定义模板过滤器及标签
<<<代码布局(自定义的代码放哪里)>>> (1)某个app特有的 1.一般放app目录下 固定名为templatetags 的python文件夹里鸭,如果是别的 ...
- 3/21 Django框架 模板路径及模板过滤器 1.模板路径查找
3/21 Django框架 模板路径及模板过滤器 1.模板路径查找 先找settings.py里的TEMPLATES列表下的DIRS路径.如果APP_DIRS为True,还会到注册了的APP文件夹下依 ...
- Django之模板过滤器
Django 模板过滤器也是我们在以后基于 Django 网站开发过程中会经常遇到的,如显示格式的转换.判断处理等.以下是 Django 过滤器列表,希望对为大家的开发带来一些方便. 一.形式:小写 ...
随机推荐
- iOS 导航控制器返回栈中的某一控制器
#import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @pr ...
- 使用awk统计字段重复实践
awk awk是一种规格化文件的分析工具, 主要处理对象类似数据库导出的条目文本文件, 其中一行,就对应一个记录,每个记录包含若干个字段. 类似这种文本: [root@www ~]# last -n ...
- js获取页面及个元素高度、宽度
网页可见区域宽: document.body.clientWidth; 网页可见区域高: document.body.clientHeight; 网页可见区域宽: document.body.offs ...
- Hadoop学习(2)-- HDFS
随着信息技术的高度发展,数据量越来越多,当一个操作系统管辖范围存储不下时,只能将数据分配到更多的磁盘中存储,但是数据分散在多台磁盘上非常不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,因此诞 ...
- AWR快照管理
创建快照: SQL> exec dbms_workload_repository.create_snapshot(); 删除快照: SQL> exec dbms_workload_repo ...
- mysql management note
related url : http://willvvv.iteye.com/blog/1563345 http://lxneng.iteye.com/blog/451985 这篇文章对vari ...
- 很赞的PHP字符串加密函数
最近, 从discuz里面发现了一个很牛的加密解密函数. 此函数的厉害之处在于可以在指定时间内加密还原字符串,超时无法还原 这样我们就可以拿此函数来做很多用途了,比如:单点登录的token加密传输啦, ...
- Appium的理念
1.Appium的架构:C/S模式 Appium的核心是暴漏REST API的WebServer,appium接收来自客户端的连接请求,监听由客户端发起的命令,在移动设备上执行这些命令,这些命令的执行 ...
- React-Native坑1:Invariant Violation:Application 项目名 has not been registered.
React-Native坑1:Invariant Violation:Application 项目名 has not been registered. 字数347 阅读1421 评论3 喜欢7 前言 ...
- paper 7:支持向量机系列四:Outliers —— 介绍支持向量机使用松弛变量处理 outliers 方法。
在最开始讨论支持向量机的时候,我们就假定,数据是线性可分的,亦即我们可以找到一个可行的超平面将数据完全分开.后来为了处理非线性数据,使用 Kernel 方法对原来的线性 SVM 进行了推广,使得非线性 ...