thinkphp中 volist循环的 mod取值的问题
<ul>
<volist name="data" id="arr" key="k" mod="2">
<eq name="mod" value="0">
<li>{$k}...{$arr.id}---{$arr.user}---{$arr.email}</li>
</eq>
</volist>
</ul>
取出的值是:
- 1...1---路飞---lufei@qq.com
- 3...3---蜡笔乖欣---222@qq.com
- 5...53---heh21033---fff@qq.com
- 7...65---小心---xiaoxin@qq.com
- 9...74---aa73f80eb8608a88a135---
- 11...76---_呵呵3994---heh@qq.com
- 13...78---5e36941b3d856737e815---xixi@qq.com
为什么取出的值是这样呢? 按自己的理解 应该是 $mod = $k%2; 然后 为0的输出来,怎么$k是基数呢,不应该是偶数吗?
随后查看缓存中的源码:
<ul>
<?php if (is_array($data)): $k = 0;
$__LIST__ = $data;
if (count($__LIST__) == 0) : echo "";
else: foreach ($__LIST__ as $key => $arr): $mod = ($k % 2);
++$k;
if (($mod) == "0"): ?>
<li><?php echo($k); ?>...<?php echo($arr["id"]); ?>---<?php echo($arr["user"]); ?>
---<?php echo($arr["email"]); ?></li><?php endif; endforeach; endif;
else: echo "";endif; ?>
</ul>
知道了,$k是从0开始的,而外面的$k却是1开始的
我们这样,自己定义一个$i:
<ul>
<!--取mod问题-->
<php>$i=0;</php>
<volist name="data" id="arr" key="k" mod="5">
<eq name="mod" value="0">
<li><php>echo $i;</php>...{$arr.id}---{$arr.user}---{$arr.email}</li>
</eq>
<php>$i++;</php>
</volist>
</ul>
值:
- 0...1---路飞---lufei@qq.com
- 2...3---蜡笔乖欣---222@qq.com
- 4...53---heh21033---fff@qq.com
- 6...65---小心---xiaoxin@qq.com
- 8...74---aa73f80eb8608a88a135---
- 10...76---_呵呵3994---heh@qq.com
- 12...78---5e36941b3d856737e815---xixi@qq.com
答案显然就出来了,是thinkphp中 把mod 的$k值改变了。。。。。
thinkphp中 volist循环的 mod取值的问题的更多相关文章
- LoadRunner中,参数化时Unique取值方式的理解
LoadRunner中,参数化时Unique取值方式的理解 2012年10月15日 18:10:36 瑞秋 阅读数:10028 在LoadRunner中进行参数化时,Parameter的取值设置有 ...
- springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序
springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序 http://www.360doc.com/content/14/03 ...
- 关于readdir返回值中struct dirent.d_type的取值有关问题(转)
关于readdir返回值中struct dirent.d_type的取值问题 原网页链接 http://www.gnu.org/software/libc/manual/html_node/Direc ...
- java中int,float,long,double取值范围,内存泄露
java中int,float,long,double取值范围是多少? 写道 public class TestOutOfBound { public static void main(String[] ...
- 建议 for 语句的循环控制变量的取值采用“半开半闭区间”写法
建议 for 语句的循环控制变量的取值采用“半开半闭区间”写法. #include <iostream> /* run this program using the console pau ...
- 【freemaker】之循环,判断,对象取值
entity: public class Employee { private Integer id; private String name; private Integer age; privat ...
- C语言中 指针、引用和取值
指针是一个存储计算机内存地址的变量.从指针指向的内存读取数据称作指针的取值.指针可以指向某些具体类型的变量地址,例如int.long和double.指针也可以是void类型.NULL指针和未初始化指针 ...
- spring学习之springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序
spring mvc处理方法支持如下的返回方式:ModelAndView, Model, ModelMap, Map,View, String, void.下面将对具体的一一进行说明: ModelAn ...
- 翻页bug 在接口文档中应规范参数的取值区间
<?php$a=array("red","green","blue","yellow","brown&q ...
随机推荐
- jQuery数组处理详解(转)
1. $.each(array, [callback]) 遍历[常用] 解释: 不同于例遍 jQuery 对象的 $.each() 方法,此方法可用于例遍任何对象(不仅仅是数组哦~). 回调函数拥有两 ...
- Linux中利用LVM实现分区动态扩容
使用命令: pvscan vgdisplay lvdisplay vgremove vgextend lvresize -l resize2fs 从物理磁盘,创建lvm逻辑分区 pvcreate vg ...
- Unity中坐标系转换方法
前言 本篇文章主要是参考<Unity API 解析>---陈泉宏. 这是本人在学校图书馆找到一本书,主要介绍的就是常用的类,比较实用,没有冗余的地方.在此推荐一下这本书! 一.Screen ...
- PHP利用memcache缓存技术提高响应速度
PHP下memcache模块是一个高效的守护进程,提供用于内存缓存的过程式程序和面向对象的方便的接口,特别是对于设计动态web程序时减少对数据库的访问.memcache也提供用于通信对话(sessio ...
- Socket网络编程精华篇
几个和Socket编程紧密相关的概念: TCP/IP层次模型 当然这里我们只讨论重要的四层 01,应用层(Application):应用层是个很广泛的概念,有一些基本相同的系统级TCP/IP应用以及应 ...
- 为什么MathType窗口变灰色
mathtype是一个功能强大的数学公式编辑器,可以轻松输入各种复杂的公式和符号,与Office文档完美结合,显示效果超好,比Office自带的公式编辑器要强大很多.但我们在使用MathType编辑公 ...
- win10取消开机密码
WIN10开机以后点击一下[开始]然后面它的搜索栏处输入[netplwiz]就可以看到如下图所示提示. 进入到用户长户界面,把[要使用本计算机,用户必须输入用户名和密码]前面的那个勾勾取消了,再点 ...
- [转]五分钟看懂UML类图与类的关系详解
在画类图的时候,理清类和类之间的关系是重点.类的关系有泛化(Generalization).实现(Realization).依赖(Dependency)和关联(Association).其中关联又分为 ...
- 创建ros的程序包--3
创建ros的程序包(原创博文,转载请标明出处--周学伟http://www.cnblogs.com/zxouxuewei/) 1.一个catkin程序包由什么组成? 一个程序包要想称为catkin程序 ...
- docker学习-docker安装
win10之外的系统:https://www.docker.com/products/docker-toolbox win10系统: https://www.docker.com/pro ...