smarty模板引擎中自定义函数的方法


Posted in PHP onJanuary 22, 2015

本文实例讲述了smarty 自定义函数方法,分享给大家供大家参考。具体如下:

本实例目的:输出 times 次 con的内容(输出4次hello world)

文件1:

<?php

//创建smarty对象

require_once("./libs/Smarty.class.php");

$smarty = new Smarty();

//自定义一个函数

//说明:(1)、$arr为一个数组;(2)、tpl调用形式{test times="4" size="5" con="hello,world" color="red"}

function test($arr){

 $str = "";

 for($i=0;$i<$arr['times'];$i++){

  $str .= "<font size='".$arr['size']."' color='".$arr['color']."'>".$arr['con']."</font>";

 }

 return $str;

}

//注册函数 registerPlugin

$smarty->registerPlugin("function","test","test");//第二个参数是模板文件调用的函数名称,可变;第三个参数是上面自定义的函数名称;相应于一个对应关系
$smarty->display("temp.tpl");

?>

模板文件:temp.tpl

<html>

<h2>smarty自定义函数的使用</h2>

{test times="3" con="hello world" size="3" color="green"}

</html>

注意:smarty 3.1.8 已经不支持注册函数 register_function,应换成 registerPlugin

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

PHP 相关文章推荐
类的另类用法--数据的封装
Oct 09 PHP
$_GET['goods_id']+0 的使用详解
Jun 06 PHP
详解PHP中strlen和mb_strlen函数的区别
Mar 07 PHP
ThinkPHP行为扩展Behavior应用实例详解
Jul 22 PHP
浅谈ThinkPHP的URL重写
Nov 25 PHP
php使用类继承解决代码重复的问题
Feb 11 PHP
PHP获取数组最大值下标的方法
May 12 PHP
PHP基于工厂模式实现的计算器实例
Jul 16 PHP
PHP读取word文档的方法分析【基于COM组件】
Aug 01 PHP
PHP自定义递归函数实现数组转JSON功能【支持GBK编码】
Jul 17 PHP
PHP中常用的三种设计模式详解【单例模式、工厂模式、观察者模式】
Jun 14 PHP
基于laravel缓冲cache的用法详解
Oct 23 PHP
smarty模板引擎中内建函数if、elseif和else的使用方法
Jan 22 #PHP
smarty模板引擎使用内建函数foreach循环取出所有数组值的方法
Jan 22 #PHP
smarty模板引擎从配置文件中获取数据的方法
Jan 22 #PHP
smarty模板引擎从php中获取数据的方法
Jan 22 #PHP
smarty模板引擎中变量及变量修饰器用法实例
Jan 22 #PHP
smarty内置函数capture用法分析
Jan 22 #PHP
smarty内置函数config_load用法实例
Jan 22 #PHP
You might like
关于PHP结束标签的使用细节探讨及联想
2013/03/04 PHP
php验证session无效的解决方法
2014/11/04 PHP
php5.2的curl-bug 服务器被php进程卡死问题排查
2016/09/19 PHP
php7 安装yar 生成docker镜像
2017/05/09 PHP
微信公众平台开发教程③ PHP实现微信公众号支付功能图文详解
2019/04/10 PHP
JavaScript 特殊字符
2007/04/05 Javascript
Dojo 学习笔记入门篇 First Dojo Example
2009/11/15 Javascript
实现51Map地图接口(示例代码)
2013/11/22 Javascript
javascript基于DOM实现省市级联下拉框的方法
2015/05/14 Javascript
BootStrap智能表单实战系列(九)表单图片上传的支持
2016/06/13 Javascript
chrome下判断点击input上标签还是其余标签的实现方法
2016/09/18 Javascript
JS表单验证方法实例小结【电话、身份证号、Email、中文、特殊字符、身份证号等】
2017/02/14 Javascript
jQuery plugin animsition使用小结
2017/09/14 jQuery
Node.JS 循环递归复制文件夹目录及其子文件夹下的所有文件
2017/09/18 Javascript
JavaScript遍历DOM元素的常见方式示例
2019/02/16 Javascript
记一次Vue.js混入mixin的使用(分权限管理页面)
2019/04/17 Javascript
python实现合并两个数组的方法
2015/05/16 Python
python 2.6.6升级到python 2.7.x版本的方法
2016/10/09 Python
python3.5 email实现发送邮件功能
2018/05/22 Python
NumPy 基本切片和索引的具体使用方法
2019/04/24 Python
python实现上传文件到linux指定目录的方法
2020/01/03 Python
python 读取串口数据的示例
2020/11/09 Python
全球领先美式家具品牌:Ashley爱室丽家居
2017/08/07 全球购物
说说在weblogic中开发消息Bean时的persistent与non-persisten的差别
2013/04/07 面试题
销售文员岗位职责
2013/11/29 职场文书
自主招生自荐信格式
2013/12/03 职场文书
纪检干部对照检查材料
2014/08/22 职场文书
办理护照工作证明
2014/10/10 职场文书
2014年高中教师工作总结
2014/12/19 职场文书
委托书英文
2015/01/28 职场文书
2015年感恩母亲节的演讲稿
2015/03/18 职场文书
电影雷锋观后感
2015/06/10 职场文书
车辆安全隐患排查制度
2015/08/05 职场文书
2016年百日安全生产活动总结
2016/04/06 职场文书
Win10此设备不支持接收Miracast无法投影的解决方法
2022/07/07 数码科技
MySQL事务的隔离级别详情
2022/07/15 MySQL