过滤器

变量可以被过滤器修饰。过滤器和变量用(|)分割开。过滤器也是可以有参数的。过滤器也可以被多重使用。

通用过滤器

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的模板过滤器的更多相关文章

  1. symfony中twig的模板载入

    模板 载入模板 {% include ‘sidebar.html’ %} 当前模板的变量也会传递到 被include的模板里,在那里面可以直接访问你这个模板的变量. {% for comment in ...

  2. symfony中twig的模板变量与注释

    程序会传递给模板若干变量,你需要在模板里输出他们.例如输出$hello .1{{ hello }}.如果传递给模板的是对象或者数组,你可以使用点. 来输出对象的属性或者方法,或者数组的成员.或者你可以 ...

  3. symfony中twig的流程控制if,for用法

    流程控制 if 语句 if语句在twig中的作用如同if语句在PHP中的一样.1.你可以通过下面这个简单的例子来判断表达式的结果是否正确. {% if online == false %} <p ...

  4. Django模板过滤器详解

    Django 模板过滤器也是我们在以后基于 Django 网站开发过程中会经常遇到的,如显示格式的转换.判断处理等.以下是 Django 过滤器列表,希望对为大家的开发带来一些方便. 一.形式:小写 ...

  5. Django框架之【自定义模板过滤器与标签】

    本文在我的微信公众号的链接:https://mp.weixin.qq.com/s?__biz=MzU5NTU5MjcwNw==&mid=2247483674&idx=1&sn= ...

  6. Django框架基础知识03-模板变量及模板过滤器

    模板变量及模板过滤器. 1.模板路径的查找 -查找顺序 1.尝试,在app目录下存放模板. -两种方案 1.app项目文件夹下存放. 2.templates文件夹下分类存放. 首先查找项目settin ...

  7. django-5-自定义模板过滤器及标签

    <<<代码布局(自定义的代码放哪里)>>> (1)某个app特有的  1.一般放app目录下 固定名为templatetags 的python文件夹里鸭,如果是别的 ...

  8. 3/21 Django框架 模板路径及模板过滤器 1.模板路径查找

    3/21 Django框架 模板路径及模板过滤器 1.模板路径查找 先找settings.py里的TEMPLATES列表下的DIRS路径.如果APP_DIRS为True,还会到注册了的APP文件夹下依 ...

  9. Django之模板过滤器

    Django 模板过滤器也是我们在以后基于 Django 网站开发过程中会经常遇到的,如显示格式的转换.判断处理等.以下是 Django 过滤器列表,希望对为大家的开发带来一些方便. 一.形式:小写 ...

随机推荐

  1. pymongo使用总结

    0. 何为pymongo pymongo是操作MongoDB的python模块 1.安装pymongo # easy_install pymongo 2.连接mongodb >>> ...

  2. ios推送

    1. ios 在杀掉app后,只能接受到系统通知,JPUSH自定义消息不能接受到.系统通知经过实验只能接收到50左右个汉字. 2. 实现方案: 推送的时候,JPUSH推送一个消息,App客户端获取到数 ...

  3. CoreOS

    http://blog.sina.com.cn/s/blog_5c57b5190102v1f0.html

  4. 从电商平台促销活动看电商app开发趋势

    据亿合科技小编了解到:尽管各大电商平台都进入了品质和品牌时代,但对于消费者来说,低价依然是一个有吸引力的因素.尼尔森<网络购物者趋势研究>报告显示,2016年价格敏感型购物者的比例从15% ...

  5. MySQL(Unix时间戳、日期)转换函数

    unix_timestamp() mysql> select unix_timestamp(); +------------------+ | unix_timestamp() | +----- ...

  6. 解决本地tomcat服务器内存不足问题

    2014-6-25 9:47:48 org.apache.coyote.http11.Http11Processor process严重: Error processing requestjava.l ...

  7. Java数据库操作大全

    1.提取单条记录 //import java.sql.*; Connection con=null; Statement stmt=null; ResultSet %%6=null; try { Cl ...

  8. Lintcode: Sort Letters by Case

    Given a string which contains only letters. Sort it by lower case first and upper case second. Note ...

  9. java List 简单使用

    Student类 class Student{ String name; String pwd; public Student(){} public Student(String name, Stri ...

  10. 0330 复利程序c语言版转java版 会逐渐更进版

    import java.util.Scanner; public class compounding { public static void main(String[] args) { menu() ...