在模板中使用函数

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

{: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

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

<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标签

<gt name="three_menu['allow_publish']" value="0">

10、present标签

<present name="three_menu['_child']">

本文分享自微信公众号 - Tech爬虫(php_pachong),作者:爬虫

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-04-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 内置标签

    ThinkPHP模版中的内置标签,所谓内置标签就是模版引擎提供的一组可以完成控制、循环和判断功能的类似 HTML 语法的标签。

    公众号php_pachong
  • HTML是什么?

    html就是要告诉浏览器我的某个东西是什么,没错,这就是它的主要功能。html的实质,他就是一种标签,一种人和浏览器交流的标签,我们只有告诉浏览器这是什么,他才...

    公众号php_pachong
  • Excel制作 项目里程碑图

    A列日期、B列milestone、C列是 里程碑文字显示的位置(高度,负数会显示在下面)、D列是X轴日期显示的高度。

    公众号php_pachong
  • 用户画像标签体系——从零开始搭建实时用户画像(三)

    用户画像的核心在于给用户“打标签”,每一个标签通常是人为规定的特征标识,用高度精炼的特征描述一类人,例如年龄、性别、兴趣偏好等,不同的标签通过结构化的数据体系整...

    用户6070864
  • 用户画像标签体系——从零开始搭建实时用户画像(三)

    ​ 用户画像的核心在于给用户“打标签”,每一个标签通常是人为规定的特征标识,用高度精炼的特征描述一类人,例如年龄、性别、兴趣偏好等,不同的标签通过结构化的数据...

    实时计算
  • 前端基础-HTML

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    cwl_java
  • 你所不知道的html5与html中的那些事(四)——文本标签

    文章简介: 关于html5相信大家早已经耳熟能详,但是他真正的意义在具体的开发中会有什么作用呢?相对于html,他又有怎样的新的定义与新理念在里面呢?为什么...

    程序员互动联盟
  • Spark Streaming管理Kafka偏移量前言从ZK获取offset

    为了让Spark Streaming消费kafka的数据不丢数据,可以创建Kafka Direct DStream,由Spark Streaming自己管理of...

    UFO
  • python学习 第五篇 flask

    py3study
  • 违背常识、颠覆认知,终于有人把薛定谔的猫讲明白了

    导读:在20世纪30年代中期,新兴量子理论的某些奇怪之处变得明显起来,薛定谔进行了一个思想实验,即“薛定谔的猫”。他试图表明,量子理论数学一定是缺了些什么。他认...

    华章科技

扫码关注云+社区

领取腾讯云代金券