ThinkPHP自定义函数解决模板标签加减运算的方法


Posted in PHP onJuly 03, 2015

本文实例讲述了ThinkPHP自定义函数解决模板标签加减运算的方法。分享给大家供大家参考。具体如下:

实际项目中,我们经常需要标签变量加减运算的操作。但是,在ThinkPHP中,并不支持模板变量直接运算的操作。

幸运的是,它提供了自定义函数的方法,我们可以利用自定义函数解决:

ThinkPHP模板自定义函数语法如下:

格式:{:function(…)} (参考官方帮助文档:http://thinkphp.cn/Manual/196)
利用这个,我们来试做加法和减法。

一、在ThinkPHP中定义函数。在项目的common文件夹下新建common.php文件(这样系统会自动加载)。定义两个函数:

/** 
 * 相加,供模板使用 
 * @param <type> $a 
 * @param <type> $b 
 */ 
function template_add($a,$b){ 
  echo(intval($a)+intval($b)); 
} 
/** 
 * 相减,供模板使用 
 * @param <type> $a 
 * @param <type> $b 
 */ 
function template_substract($a,$b){ 
  echo(intval($a)-intval($b)); 
}

二、在模板中使用函数:

{:template_add($var1,$var2)}

即可显出变量var1于var2的和。
需要注意的是:如果变量是数组,要这样显示:
{:template_add($var[var1],$var[var2])}

而不是我们通常是用点语法。

希望本文所述对大家基于ThinkPHP的php程序设计有所帮助。

PHP 相关文章推荐
一键删除顽固的空文件夹 软件下载
Jan 26 PHP
php 将bmp图片转为jpg等其他任意格式的图片
Jun 29 PHP
php防注入及开发安全详细解析
Aug 09 PHP
Yii基于数组和对象的Model查询技巧实例详解
Dec 28 PHP
PHP信号量基本用法实例详解
Feb 12 PHP
Yii2实现上下联动下拉框功能的方法
Aug 10 PHP
如何使用PHP给图片加水印
Oct 12 PHP
php获取字符串前几位的实例(substr返回字符串的子串用法)
Mar 08 PHP
PHP jQuery+Ajax结合写批量删除功能
May 19 PHP
PHP正则匹配操作简单示例【preg_match_all应用】
Jul 10 PHP
PHP实现百度人脸识别
May 06 PHP
Laravel 框架返回状态拦截代码
Oct 18 PHP
5款适合PHP使用的HTML编辑器推荐
Jul 03 #PHP
[原创]php逐行读取txt文件写入数组的方法
Jul 02 #PHP
PHP的Socket通信之UDP通信实例
Jul 02 #PHP
php三元运算符知识汇总
Jul 02 #PHP
PHP中foreach()用法汇总
Jul 02 #PHP
PHP.ini安全配置检测工具pcc简单介绍
Jul 02 #PHP
PHP输出缓冲控制Output Control系列函数详解
Jul 02 #PHP
You might like
PHP Squid中可缓存的动态网页设计
2008/09/17 PHP
php 无极分类(递归)实现代码
2010/01/05 PHP
深入理解PHP原理之Session Gc的一个小概率Notice
2011/04/12 PHP
PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\
2012/06/17 PHP
PHP 使用pcntl和libevent 实现Timer功能
2013/10/27 PHP
PHP中使用asort进行中文排序失效的问题处理
2014/08/18 PHP
PHP实现验证码校验功能
2017/11/16 PHP
PHP如何通过date() 函数格式化显示时间
2020/11/13 PHP
JQuery 常用操作代码
2010/03/14 Javascript
Javascript 面试题随笔
2011/03/31 Javascript
利用a标签自动解析URL分析网址实例
2014/10/20 Javascript
jQuery读取XML文件内容的方法
2015/03/09 Javascript
JS版元素周期表实现方法
2015/08/05 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
vue better-scroll插件使用详解
2018/01/25 Javascript
Vuejs+vue-router打包+Nginx配置的实例
2018/09/20 Javascript
Vue创建头部组件示例代码详解
2018/10/23 Javascript
Vue中多元素过渡特效的解决方案
2020/02/05 Javascript
Vue 实现监听窗口关闭事件,并在窗口关闭前发送请求
2020/09/01 Javascript
[42:23]完美世界DOTA2联赛PWL S3 Forest vs Rebirth 第二场 12.10
2020/12/13 DOTA
python错误处理详解
2014/09/28 Python
python+VTK环境搭建及第一个简单程序代码
2017/12/13 Python
Windows下anaconda安装第三方包的方法小结(tensorflow、gensim为例)
2018/04/05 Python
django主动抛出403异常的方法详解
2019/01/04 Python
对python 自定义协议的方法详解
2019/02/13 Python
python实现滑雪者小游戏
2020/02/22 Python
Python绘图实现台风路径可视化代码实例
2020/10/23 Python
Python 使用xlwt模块将多行多列数据循环写入excel文档的操作
2020/11/10 Python
IGK Hair官网:喷雾、洗发水、护发素等
2020/11/03 全球购物
遗嘱公证书标准样本
2014/04/08 职场文书
全国爱牙日活动总结
2015/02/05 职场文书
离婚财产分割协议书
2015/08/11 职场文书
公安干警正风肃纪心得体会
2016/01/15 职场文书
SQLServer2019 数据库环境搭建与使用的实现
2021/04/08 SQL Server
django上传文件的三种方式
2021/04/29 Python
Java使用JMeter进行高并发测试
2021/11/23 Java/Android