smarty中ifelse、foreach以及获取数组中键值名的一个实例
<{if empty($history)}>
<tr>
<td colspan="6">Not any records!</td>
</tr>
<{else}>
<{foreach from=$history item=item}>
<tr>
<td><{$item.id}></td>
<td>
<div style="max-width:700px;overflow:hidden;text-overflow:ellipsis; ">
<a href="#">
Keywords:<{$item.keywords}><br>
Size:<{$item.size}><br>
<{foreach from=$item.options key=key item=option}>
<{$key}>:<{$option}><br>
<{/foreach}>
</td>
<td><{$item.num}></td>
<td><{$item.create_time}></td>
<td><{$item.last_process}></td>
<td>
<span class="label
<{if $item.status eq 'new'}>
label-primary
<{else}>
label-success
<{/if}>">
<{$item.status}>
</span>
</td>
<td>
<a href="#" class="btn btn-danger btn-xs"><i class="fa fa-trash-o"></i>Delete</a>
<a href="#" class="btn btn-primary btn-xs"><i class="fa fa-file-text"></i>Report</a>
</td>
</tr>
<{/foreach}>
<{/if}>
这是我在项目开发中使用的smarty的一个例子,所以扣下来以作记录。以下为讲解:
分四种颜色,对应两种语句(ifelse,foreach),其中$history为二维数组:
1、黄绿色、橙色,if else语句的使用,及empty()函数,eq的使用
2、蓝色、红色,foreach语句的使用,其中from和item必须的两个参数,from表示循环访问的数组,item当前元素的变量名。还有两个参数,name和key,name用于访问foreach属性的foreach循环的变量名,key就是数组中元素对应的键值名。
smarty中ifelse、foreach以及获取数组中键值名的一个实例的更多相关文章
- php获取数组的键值
<?php header ( "Content-type: text/html; charset=utf-8" ); $info[; $info[; $info[; $inf ...
- C#中获取数组中相加和最接近或等于(<=)给定值的算法
, ,,,,,,,,, }; List<List<int>> mylist = new List<List<int>>(); int length = ...
- js获取数组中的最大值/最小值
目录 前言 1. 使用Math的静态方法max/min 1.1 结合ES6的扩展运算符...使用 1.2 结合apply/call方法来使用 1.3 结合reduce来使用 2. 排序获取 2.1 只 ...
- php获取数组中重复数据的两种方法
分享下php获取数组中重复数据的两种方法. 1,利用php提供的函数,array_unique和array_diff_assoc来实现 <?php function FetchRepeatMem ...
- c#获取数组中最大的元素
, , , , , , , , , }; var max = array.Max();//获取数组中的最大值 第一种 //第二种方法 ]; ; i < array.Length; i++) { ...
- js获取数组中最大值和最小值
var max = Math.max.apply(null, 数组); 获取最大值 var min = Math.min.apply(null, 数组);获取最小值 一句话获取数组中最大的数,最小数
- python获取数组中最多的元素
获取数组中数量最多的元素,也就是最频繁的那个元素,方法有很多,下面是3种最简单的: 用max函数 sample = [1,2,3,3,3,4,5,5] max(set(sample), key=sam ...
- Javascript获取数组中的最大值和最小值的方法汇总
比较数组中数值的大小是比较常见的操作,下面同本文给大家分享四种放哪广发获取数组中最大值和最小值,对此感兴趣的朋友一起学习吧 比较数组中数值的大小是比较常见的操作,比较大小的方法有多种,比如可以使用 ...
- [JavaScript] 获取数组中相同元素的个数
/** * 获取数组中相同元素的个数 * @param val 相同的元素 * @param arr 传入数组 */ function getSameNum(val,arr){ processArr ...
随机推荐
- vue入门:(模板语法与指令)
vuejs使用及HTML的模板语法,可以实现声明式将DOM绑定至底层VUE实例的数据.通过模板语法将数据渲染进DOM的系统,结合响应系统,在应用状态改变时,Vue能够计算出重新渲染组件的最小代价并应用 ...
- vuex中的this.$store.commit
Vue的项目中,如果项目简单, 父子组件之间的数据传递可以使用 props 或者 $emit 等方式 进行传递 但是如果是大中型项目中,很多时候都需要在不相关的平行组件之间传递数据,并且很多数据需要多 ...
- 【踩坑经历】SQLSTATE[HY000] [2002] Connection refused
使用docker搭建lnmp环境,使用的是分容器的搭建方案 框架使用thinkphp,想要连接数据MySQL,一直显示"SQLSTATE[HY000] [2002] Connection r ...
- TensorFlow中CNN的两种padding方式“SAME”和“VALID”
来源 dilation_rate为一个可选的参数,默认为1,这里我们可以先不管它. 整理一下,对于"VALID",输出的形状计算如下: new_height=new_width=⌈ ...
- export CommonJS AMD ES6
export https://www.cnblogs.com/fayin/p/6831071.html 导入文件: a - b - c ,对象隔代消失,可转成函数返回 导入模块对象(命名) ...
- Binlog_master
二进制日志 记录导致数据改变或潜在导致数据改变的SQL语句 记录已提交的日志 不依赖于存储引擎类型 功能:通过"重放"日志文件中的事件来生成数据副本 注意:建议二进制日志和数据文件 ...
- 通过WSL使用rsync同步本文件
1.安装WLS 主要参考Windows10上使用Linux子系统(WSL)这篇文章进行安装,不要通过lxrun /install /y去安装,这种方法安装貌似没有wsl命令. 先把win 10 版本升 ...
- 初次安装虚拟机WindowsServer2016
因学习需要,安装windosServer2016,遇到了几个小坑,特地分享一下. 一.windows server 2016 登录 在登录是会出现 输入CTRL+ALT+DEL,才能响应进入用户界面, ...
- 使用cJSON解析JSON
cJSON获取数组元素的每个值 { "operType": 0x5, "field": ["time","matchRule&qu ...
- Redis05——Redis高级运用(管道连接,发布订阅,布隆过滤器)
Redis高级运用 一.管道连接redis(一次发送多个命令,节省往返时间) 1.安装nc yum install nc -y 2.通过nc连接redis nc localhost 6379 3.通过 ...