过滤器在视图层对数据进行处理,如时间戳转换,小数的位数处理,字符串截取等
过滤器和数据以 | 隔开, 可以链式写法,多次调用
{{ courseSet.title|default('标题')|plain_text(30) }}
对课程标题进行过滤,为空则显示 '标题',超出30字,截取30个字符。
函数一般用于一些逻辑计算,获值。
描述
返回与当前时间的 时间差
示例
设当前时间是 1501200065
该话题于 {{ 1501200060|smart_time }} 创建
该课程于 {{ 1501200000|smart_time }} 创建
以上会输出:
该话题于 5秒前 创建
该课程于 一分钟前 创建
描述
格式化本地日期和时间,并返回已格式化的日期字符串。作用等同于php date函数
参数
字段 | 是否必填 | 描述 |
---|---|---|
format |
否 | http://php.net/manual/zh/function.date.php |
示例
{{ 1501234607|date_format }}
{{ 1501234607|date_format('y.m.d') }}
{{ 1501234607|date_format('Y-m-d H:i:s') }}
以上会输出:
2017-07-28 17:36
17.07.28
2017-07-28 17:36:47
描述
返回剩余时间
参数
字段 | 是否必填 | 描述 |
---|---|---|
timeType |
否 | 参数项: day |
描述
国际化,根据key翻译输出。翻译文件在
app/Resources/translations/
描述
返回文件大小,单位为B, KB, MB, GB
描述
返回截取后的字符串
参数
示例
{{ 'php基础课程-基本语法'|plain_text(5) }}
以上会输出:
php基础...
描述
返回带有没有单位的时间,以分秒的形式
示例
{{ 65|duration }}
以上会输出:
01:05
描述
返回带有单位的时间
示例
{{ 65|duration_text }}
以上会输出:
1分5秒
描述
等同于php函数 chr
描述
将数字保留一位小数,转化成字符串
描述
对带有html的字符串进行安全过滤
描述
过滤掉 edusoho字符串,去除edusoho版权
描述
将空格替换成
示例
{{ 课程 班级|space2nbsp }}
以上会输出:
课程 班级
描述
将数字转化成有单位的,单位: 千,万,亿
示例
{{ 100|number_to_human }}
{{ 1001|number_to_human }}
{{ 10001|number_to_human }}
{{ 100000001|number_to_human }}
以上会输出:
100
1千
1万
1亿
描述
返回绝对的路径
参数
字段 | 是否必填 | 描述 |
---|---|---|
path |
是 | 文件路径 |
defaultKey |
否 | 默认显示的图片 |
描述
返回相对路径
参数
字段 | 是否必填 | 描述 |
---|---|---|
path |
是 | 文件路径 |
defaultKey |
否 | 默认显示的图片 |
描述
返回符合懒加载格式的img标签
参数
字段 | 是否必填 | 描述 |
---|---|---|
src |
是 | img标签路径 |
class |
否 | img标签的样式类 |
alt |
否 | img标签描述 |
img |
否 | 懒加时显示的默认图片 |
描述
返回用户的头像路径
参数
字段 | 是否必填 | 描述 |
---|---|---|
user |
是 | 用户对象 |
type |
否 | 头像大小 参数项: small,middle,large |
描述
根据name,返回setting表对应的数据
参数
字段 | 是否必填 | 描述 |
---|---|---|
name |
是 | |
default |
否 | 默认数据 |
描述
计算百分比
参数
number 必填 分子 total 必填 分母
字段 | 是否必填 | 描述 |
---|---|---|
number |
是 | 分子 |
total |
是 | 分母 |
示例
{{ percent(12,51) }}
{{ percent(12,0) }}
{{ percent(51,0) }}
以上会输出:
23%
0%
0%
描述
返回文件上传的最大值
参数
字段 | 是否必填 | 描述 |
---|---|---|
formated |
是 | 布尔值 |
示例
{{ upload_max_filesize() }}
{{ upload_max_filesize(false) }}
以上会输出:
1.0GB
1073741824
描述
插件是否安装
参数
字段 | 是否必填 | 描述 |
---|---|---|
code |
是 |
描述
返回插件版本号
参数
字段 | 是否必填 | 描述 |
---|---|---|
code |
是 |
描述
返回文件上传的token
参数
字段 | 是否必填 | 描述 |
---|---|---|
group |
是 | 上传分类,对应不同的目录存储 |
type |
否 | 上传类型 |
描述
返回 包含天,小时,分,秒的倒计时对象
参数
字段 | 是否必填 | 描述 |
---|---|---|
value |
是 | 时间戳 |
示例
{{ dump(countdown_time(12222222222)) }}
以上会输出:
array(4) {
["days"]=>
int(124083)
["hours"]=>
int(18)
["minutes"]=>
int(42)
["seconds"]=>
int(10)
}
描述
返回 ip所属的地址
参数
字段 | 是否必填 | 描述 |
---|---|---|
ip |
是 |
描述
返回 用户的账户信息
参数
字段 | 是否必填 | 描述 |
---|---|---|
userId |
是 | userId |
描述
模糊手机号码,中间4位以 ** 显示
参数
字段 | 是否必填 | 描述 |
---|---|---|
phoneNum |
是 | 手机号 |
描述
模糊身份证号码,中间12位以 ** 显示
参数
字段 | 是否必填 | 描述 |
---|---|---|
idcardNum |
是 | 身份证号码 |
描述
返回订单的支付方式
参数
字段 | 是否必填 | 描述 |
---|---|---|
order |
是 | 订单对象 |
default |
否 | 默认显示的值 |
描述
返回定时任务下次执行时间
描述
返回用户指纹信息
描述
返回url里的参数
参数
字段 | 是否必填 | 描述 |
---|---|---|
url |
是 | 链接地址 |
描述
返回当前时间戳
描述
返回用户的会员信息
参数
字段 | 是否必填 | 描述 |
---|---|---|
userId |
是 | 用户ID |
描述
路由是否存在
参数
字段 | 是否必填 | 描述 |
---|---|---|
name |
是 | 路由名称 |
描述
是否微信浏览器
描述
插件更新通知
描述
是否开启手机微网校,只在移动设备访问才生效
描述
是否移动端设备访问
描述
返回 option 标签
参数
字段 | 是否必填 | 描述 |
---|---|---|
choices |
是 | 下拉框的选项 |
selected |
否 | 当前选中的项 |
empty |
否 | 没有选中某项时,显示的内容 |
示例
以上会输出:
描述
返回 input 单选框 标签
参数
字段 | 是否必填 | 描述 |
---|---|---|
name |
是 | input标签的name属性 |
choices |
是 | 单选框的选项 |
checked |
否 | 当前选中的项 |
示例
{{ radios('learnMode', { 'freeMode': '自由', 'lockMode': '解锁' }, 'freeMode') }}
以上会输出:
描述
返回 input 复选框标签
参数
字段 | 是否必填 | 描述 |
---|---|---|
name |
是 | input标签的name属性 |
choices |
是 | 复选框的选项 |
checkeds |
否 | 当前选中的项 |
示例
{{ checkboxs('boxs', {'A':'A', 'B':'B','C':'C'},['A','C']) }}
以上会输出:
描述
字典,预先定义好的数据,在dict.zh_CN.yml
定义 返回一个对象
参数
字段 | 是否必填 | 描述 |
---|---|---|
name |
是 | 字典名称 |
示例
{{ dump(dict('courseType')) }}
以上会输出:
array(4) {
["live"]=>
string(12) "直播课程"
["open"]=>
string(15) "录播公开课"
["liveOpen"]=>
string(15) "直播公开课"
["normal"]=>
string(12) "普通课程"
}
描述
返回字典中的对应key的文本
参数
字段 | 是否必填 | 描述 |
---|---|---|
name |
是 | 字典名称 |
key |
否 |
示例
{{ dict_text('courseType', 'open') }}
以上会输出:
直播课程