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 相关文章推荐
最省空间的计数器
Oct 09 PHP
E路文章系统PHP
Dec 11 PHP
php 中的str_replace 函数总结
Apr 27 PHP
php 无限级分类学习参考之对ecshop无限级分类的解析 带详细注释
Mar 23 PHP
PHP获取文件绝对路径的代码(上一级目录)
May 29 PHP
PHP数据类型之整数类型、浮点数的介绍
Apr 28 PHP
php switch语句多个值匹配同一代码块的实现
Mar 03 PHP
PHP树的深度编历生成迷宫及A*自动寻路算法实例分析
Mar 10 PHP
Yii框架数据模型的验证规则rules()被执行的方法
Dec 02 PHP
PHP排序算法之基数排序(Radix Sort)实例详解
Apr 21 PHP
php 命名空间(namespace)原理与用法实例小结
Nov 13 PHP
PHP xpath提取网页数据内容代码解析
Jul 16 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
玛琪朵 Macchiato
2021/03/03 咖啡文化
压力如何影响浓缩咖啡品质
2021/03/03 咖啡文化
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
实例化php类时传参的方法分析
2020/06/05 PHP
Javascript 圆角div的实现代码
2009/10/15 Javascript
asp.net HttpHandler实现图片防盗链
2009/11/09 Javascript
Three.js源码阅读笔记(基础的核心Core对象)
2012/12/27 Javascript
JS获取Table中td值的方法
2015/03/19 Javascript
jQuery实现简单二级下拉菜单
2015/04/12 Javascript
JQuery+CSS实现图片上放置按钮的方法
2015/05/29 Javascript
用JavaScript获取页面文档内容的实现代码
2016/06/10 Javascript
用JS实现图片轮播效果代码(一)
2016/06/26 Javascript
微信小程序 实现tabs选项卡效果实例代码
2016/10/31 Javascript
JavaScript表单验证的两种实现方法
2017/02/11 Javascript
bmob js-sdk 在vue中的使用教程
2018/01/21 Javascript
JS动画定时器知识总结
2018/03/23 Javascript
详解Angular6 热加载配置方案
2018/08/18 Javascript
JS 实现获取验证码 倒计时功能
2018/10/29 Javascript
微信小程序实现下滑到底部自动翻页功能
2020/03/07 Javascript
原生js实现表格循环滚动
2020/11/24 Javascript
使用Python3中的gettext模块翻译Python源码以支持多语言
2015/03/31 Python
Python heapq使用详解及实例代码
2017/01/25 Python
Python中文件I/O高效操作处理的技巧分享
2017/02/04 Python
对Python 多线程统计所有csv文件的行数方法详解
2019/02/12 Python
python读取图片的方式,以及将图片以三维数组的形式输出方法
2019/07/03 Python
通过Python编写一个简单登录功能过程解析
2019/09/04 Python
python读取ini配置文件过程示范
2019/12/23 Python
Python OpenCV去除字母后面的杂线操作
2020/07/05 Python
推广普通话标语
2014/06/27 职场文书
住房租房协议书
2014/08/20 职场文书
2014年销售人员工作总结
2014/11/27 职场文书
幼儿园工作总结2015
2015/04/01 职场文书
老公出轨后的保证书
2015/05/08 职场文书
2019班干部竞选演讲稿范本!
2019/07/08 职场文书
详解Nginx 被动检查服务器的存活状态
2021/10/16 Servers
利用For循环遍历Python字典的三种方法实例
2022/03/25 Python