smarty模板引擎之内建函数用法


Posted in PHP onMarch 30, 2015

本文实例讲述了smarty内建函数的使用方法。分享给大家供大家参考。具体如下:

in-build(内建),在smarty模板中,提供了很多内建的函数库,具体使用可以参考smarty中文手册chm版本。

1.foreach函数

操作数组如下:

//索引数组 
$res=array('上海','北京','深圳');
$smarty->assign("arr",$res);
//关联数组 
$res2=array('city1'=>'北京','city2'=>'广州','city3'=>'湖南');
$smarty->assign("arr2",$res2);
//索引二维数组 
$res3 = array( 
  array('潇晓','常山','吴蓓'),array('珊珊','常明') 
);
$smarty->assign("arr3",$res3);
//关联二维数组 
$res4 = array( 
  array('id'=>'001','name'=>'张三','email'=>'zhangsan@1163.com'), 
  array('url'=>'http://www.baidu.com','age'=>'28') 
);
$smarty->assign("arr4",$res4);
//关联二维数组2 
$res5=array( 
  'emp1'=>array('id'=>'001','name'=>'张三','email'=>'zhangsan@1163.com'), 
  'emp2'=>array('url'=>'http://www.baidu.com','age'=>'28') 
); 
$smarty->assign("arr5",$res5);

遍历数组:

其中from、item、key是固定写法,key可以根据需求加

一维数组

索引数组:

<br/> 
<{foreach from=$arr item=temp}>
  <{$temp}> <t/> 
<{/foreach}> 
<br/>关联数组:<br/> 
<{foreach from=$arr2 item=temp key=k}>
  <{$k}>=<{$temp}><t/>
<{/foreach}> 
<br/>

备注:from、item、key是固定的 
二维数组

<br/>二维索引数组:<br/> 
<{foreach from=$arr3 item=temp key=k}>
  <{*这里的temp是一个数组*}> 
  <{foreach from=$temp item=val}> 
    <{$val}> 
  <{/foreach}> 
<{/foreach}> 
<br/>二维关联数组格式1:<br/> 
<{foreach from=$arr4 item=temp}> 
  <{*外层的键不需要,所以不添加key*}> 
  <{foreach from=$temp item=val key=k}>
    <{*内层的键需要,添加key*}> 
    <{$k}>=<{$val}> 
  <{/foreach}> 
<{/foreach}> 
<br/>二维关联数组格式2:<br/> 
<{foreach from=$arr5 item=temp key=k}>
  <{$k}>: 
  <{foreach from=$temp item=val key=k2}>
    <{$k2}>=<{$val }>
  <{/foreach}> 
  <br/> 
<{/foreach}>

2.if...else...

<{if $age>10 }> 
  年龄大于10,年龄为:<{$age}> 
  <{else}> 
  年龄小于10,年龄为:<{$age}> 
<{/if}>

3.if...elseif...elseif...else...

已知数据源如下:

$res4 = array( 
  array('id'=>'001','age'=>'4'), 
  array('id'=>'002','age'=>'16'), 
  array('id'=>'003','age'=>'20'), 
  array('id'=>'004','age'=>'80') 
);

模板中引用如下:

<{foreach from=$arr4 item=temp }>
  <{if $temp.age < 5}>
    <{$temp.id}>,你是小孩
  <{elseif $temp.age >=5 and $temp.age <= 18}>
    <{$temp.id}>,你是年轻人
  <{elseif $temp.age > 18 and $temp.age <= 50}>
    <{$temp.id}>,你是成年人
  <{else}>
    <{$temp.id}>,年龄<span style="font-family:Consolas;">比较大了</span>
  <{/if}>
<{/foreach}

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

PHP 相关文章推荐
深入php 正则表达式的学习探讨
Jun 06 PHP
php MessagePack介绍
Oct 06 PHP
PHP实现数组递归转义的方法
Aug 28 PHP
php计算两个日期相差天数的方法
Mar 14 PHP
百度工程师讲PHP函数的实现原理及性能分析(二)
May 13 PHP
简单介绍win7下搭建apache+php+mysql开发环境
Aug 06 PHP
PHP explode()函数的几个应用和implode()函数有什么区别
Nov 05 PHP
[原创]PHP字符串中插入子字符串方法总结
May 06 PHP
thinkphp修改配置进入默认首页的方法
Feb 07 PHP
详解php中serialize()和unserialize()函数
Jul 08 PHP
PHP-FPM 的管理和配置详解
Feb 17 PHP
Laravel定时任务的每秒执行代码
Oct 22 PHP
PHP中实现Bloom Filter算法
Mar 30 #PHP
smarty模板引擎之配置文件数据和保留数据
Mar 30 #PHP
PHP中使用BigMap实例
Mar 30 #PHP
PHP中使用Memache作为进程锁的操作类分享
Mar 30 #PHP
php中判断数组相等的方法以及数组运算符介绍
Mar 30 #PHP
smarty模板引擎之分配数据类型
Mar 30 #PHP
php生成不重复随机数、数组的4种方法分享
Mar 30 #PHP
You might like
使用VisualStudio开发php的图文设置方法
2010/08/21 PHP
php获取操作系统语言代码
2013/11/04 PHP
php中动态调用函数的方法
2015/03/16 PHP
PHP随手笔记整理之PHP脚本和JAVA连接mysql数据库
2015/11/25 PHP
PHP实现的Redis多库选择功能单例类
2017/07/27 PHP
jQuery学习3:操作元素属性和特性
2010/02/07 Javascript
jQuery fadeOut 异步实例代码详解
2016/08/18 Javascript
ES6概念 Symbol toString()方法
2016/12/25 Javascript
浅谈js-FCC算法Friendly Date Ranges(详解)
2017/04/10 Javascript
JS触摸事件、手势事件详解
2017/05/04 Javascript
javascript 中iframe高度自适应(同域)实例详解
2017/05/16 Javascript
详解nodejs模板引擎制作
2017/06/14 NodeJs
微信小程序页面跳转功能之从列表的item项跳转到下一个页面的方法
2017/11/27 Javascript
JS代码实现电脑配置检测功能
2018/03/21 Javascript
jQuery使用bind动态绑定事件无效的处理方法
2018/12/11 jQuery
vue-week-picker实现支持按周切换的日历
2019/06/26 Javascript
详解ECMAScript2019/ES10新属性
2019/12/06 Javascript
分析Python的Django框架的运行方式及处理流程
2015/04/08 Python
Flask的图形化管理界面搭建框架Flask-Admin的使用教程
2016/06/13 Python
Python 基于Twisted框架的文件夹网络传输源码
2016/08/28 Python
python 调用c语言函数的方法
2017/09/29 Python
VScode编写第一个Python程序HelloWorld步骤
2018/04/06 Python
如何利用Python分析出微信朋友男女统计图
2019/01/25 Python
基于python修改srt字幕的时间轴
2020/02/03 Python
Python制作简单的剪刀石头布游戏
2020/12/10 Python
美体小铺印度官网:The Body Shop印度
2019/10/17 全球购物
十佳教师事迹材料
2014/01/11 职场文书
工程类专业自荐信范文
2014/03/09 职场文书
创先争优宣传标语
2014/10/08 职场文书
2015庆祝七一建党节94周年活动总结
2015/03/20 职场文书
2015年教导处教学工作总结
2015/07/22 职场文书
2016廉洁从业学习心得体会
2016/01/19 职场文书
话题作文之呼唤
2019/12/18 职场文书
vue中 this.$set的使用详解
2021/11/17 Vue.js
用Python爬取英雄联盟的皮肤详细示例
2021/12/06 Python
MySQL 数据库 增删查改、克隆、外键 等操作
2022/05/11 MySQL