前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在模板中使用函数

在模板中使用函数

作者头像
PM吃瓜
发布2019-08-12 15:34:09
1.1K0
发布2019-08-12 15:34:09
举报
文章被收录于专栏:PM吃瓜(公众号)PM吃瓜(公众号)

函数调用方法,如果你觉得这样写起来比较麻烦,也可以直接这样写:

代码语言:javascript
复制
{:substr(strtoupper(md5($name)),0,3)}

变量输出使用的函数可以支持内置的PHP函数或者用户自定义函数,甚至是静态方法。

系统自带的函数,一般在functions.php中 // C函数,获取配置名称 <title>{:C('WEB_SITE_TITLE')}</title> // U函数,获取URL地址 <a class="brand" href="{:U('index/index')}">OneThink</a>

自定义函数,一般定义在模块下common下的function.php或者公共模块common下的function.php中

Volist

模板中可以直接使用函数设定数据集,而不需要在控制器中给模板变量赋值传入数据集变量,如:

代码语言:javascript
复制
<volist name=":fun('arg')" id="vo">
{$vo.name}
</volist>

eq标签

<a href="{$nav.url|get_nav_url}" target="<eq name='nav.target' value='1'>_blank<else/>_self</eq>">{$nav.title}</a> // 读取session中的update变量

<eq name="Think.session.update" value="1">升级<else/>安装</eq></a></li> <eq name="Think.ACTION_NAME" value="mydocument">

If标签

<if condition="strpos($store_data['banner_id'],$vo['id'])!==false">class="selected"</if>

由于if标签的condition属性里面基本上使用的是php语法,尽可能使用判断标签和Switch标签会更加简洁,原则上来说,能够用switch和比较标签解决的尽量不用if标签完成。因为switch和比较标签可以使用变量调节器和系统变量。如果某些特殊的要求下面,IF标签仍然无法满足要求的话,可以使用原生php代码或者PHP标签来直接书写代码。 /*****字符串长度 / 子字符串********、 <if condition="mb_strlen($vo['remark'],'utf8') lt 65"> {:mb_substr($vo['remark'],0,64,'utf8')} <else /> {:mb_substr($vo['remark'],0,64,'utf8')}... </if>

<if condition="abslength($vo['remark']) lt 102"> {:csubstr($vo['remark'],0,102,'utf8')} <else /> {:csubstr($vo['remark'],0,100,'utf8')}... </if>

U函数(生成url)

标签组合应用

9、gt标签

代码语言:javascript
复制
<gt name="three_menu['allow_publish']" value="0">

10、present标签

代码语言:javascript
复制
<present name="three_menu['_child']">
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-04-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Tech爬虫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档