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 相关文章推荐
模板引擎Smarty深入浅出介绍
Dec 06 PHP
PHP实时显示输出
Oct 02 PHP
PHP连接Access数据库的方法小结
Jun 20 PHP
php实现12306火车票余票查询和价格查询(12306火车票查询)
Jan 14 PHP
浅析php原型模式
Nov 25 PHP
php删除指定目录的方法
Apr 03 PHP
PHP实现简单数字分页效果
Jul 26 PHP
php正则表达式学习笔记
Nov 13 PHP
php验证身份证号码正确性的函数
Jul 20 PHP
php判断str字符串是否是xml格式数据的方法示例
Jul 26 PHP
详解关于php的xdebug配置(编辑器vscode)
Jan 29 PHP
Laravel事件监听器用法实例分析
Mar 12 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
php 模拟post_验证页面的返回状态(实例讲解)
2013/10/28 PHP
php查找任何页面上的所有链接的方法
2013/12/03 PHP
一漂亮的PHP图片验证码实例
2014/03/21 PHP
php将字符串随机分割成不同长度数组的方法
2015/06/01 PHP
PHP5.5迭代生成器用法实例详解
2016/03/16 PHP
如何在Laravel5.8中正确地应用Repository设计模式
2019/11/26 PHP
jQuery lazyload 的重复加载错误以及修复方法
2010/11/19 Javascript
js中substring和substr的详细介绍与用法
2013/08/29 Javascript
js克隆对象、数组的常用方法介绍
2013/09/26 Javascript
js如何获取兄弟、父类等节点
2014/01/06 Javascript
jQuery文件上传插件Uploadify使用指南
2014/06/05 Javascript
14 个折磨人的 JavaScript 面试题
2016/08/08 Javascript
JavaScript数组去重的几种方法效率测试
2016/10/23 Javascript
JS失效 提示HTML1114: (UNICODE 字节顺序标记)的代码页 utf-8 覆盖(META 标记)的冲突的代码页 utf-8
2017/06/23 Javascript
Three.js实现3D机房效果
2018/12/30 Javascript
vue-cli3 配置开发与测试环境详解
2019/05/17 Javascript
Vue使用Clipboard.JS在h5页面中复制内容实例详解
2019/09/03 Javascript
layer.open 子页面弹出层向父页面传输数据的例子
2019/09/26 Javascript
微信小程序收藏功能的实现代码
2020/06/19 Javascript
Vue实现指令式动态追加小球动画组件的步骤
2020/12/18 Vue.js
详解Python正则表达式re模块
2019/03/19 Python
pytorch中获取模型input/output shape实例
2019/12/30 Python
美国珠宝精品店:Opulent Jewelers
2019/08/20 全球购物
材料加工硕士生求职信
2013/10/10 职场文书
行政助理求职自荐信
2013/10/26 职场文书
某同学的自我鉴定范文
2013/12/26 职场文书
总经理任命书
2014/03/29 职场文书
管理工程专业求职信
2014/08/10 职场文书
2014客服代表实习自我鉴定
2014/09/18 职场文书
合同权益转让协议书模板
2014/11/18 职场文书
小学一年级学生评语大全
2014/12/25 职场文书
教师岗位职责范本
2015/04/02 职场文书
用电申请报告范文
2015/05/18 职场文书
2015年乡镇财政工作总结
2015/05/19 职场文书
鲁冰花观后感
2015/06/10 职场文书
PostgreSQL 插入INSERT、删除DELETE、更新UPDATE、事务transaction
2022/04/12 PostgreSQL