zoukankan      html  css  js  c++  java
  • thinkphp中view页面中的volist标签转化为原生php分析(多去看源代码,你会发现不仅简单,方便你理解,还节约时间)

    thinkphp中view页面中的volist标签转化为原生php分析(多去看源代码,你会发现不仅简单,方便你理解,还节约时间)

    一、总结

    1、标签和原生php之间的关系标签只是为了方便你使用,标签能做到的功能原生php一定能做到,因为标签就是用原生php写的

    二、thinkphp中view页面中的volist标签转化为原生php分析

    view中的volist标签

    {volist name="dataout" id="vo"}
    {/volist}

    转化为原生php后的代码

    <?php if(is_array($dataout) || $dataout instanceof 	hinkCollection || $dataout instanceof 	hinkPaginator): $i = 0; $__LIST__ = $dataout;if( count($__LIST__)==0 ) : echo "" ;else: foreach($__LIST__ as $key=>$vo): $mod = ($i % 2 );++$i;?>
    <?php endforeach; endif; else: echo "" ;endif; ?>

    1、if(is_array($dataout) || $dataout instanceof hinkCollection || $dataout instanceof hinkPaginator): 这部分判断从控制器传过来的数据是不是数组,或者Collection或者Paginator的实例,因为volist的参数可以是这三种

    2、$i = 0; $__LIST__ = $dataout; i赋初值并且将页面传过来的数据赋值给 $__LIST__  ,所以从这里可以发现页面传过来的数据可以直接$dataout; 的方式用

    3、if( count($__LIST__)==0 ) : echo "" ; 判断数据是否为空,为空则输出空

    4、foreach($__LIST__ as $key=>$vo): foreach遍历数组啊

    5、$mod = ($i % 2 );++$i; 生成mod参数,也就是volist中的歌mod参数,代表奇偶数的那个变量

    6、endforeach; endif; 因为我们把循环和判断分开来写了,所以你没法用}来判断块结束,所以就 用endforeach来结束foreach,用endif来结束if

    三、volist标签的几个参数

    name 需要遍历的数据

    id 类似于foreach中 value

    offset 截取数据起始位置

    length 截取数据的个数

    mod 奇偶数

    empty 数据为空的使用

    key 编号

    在volist中有些参数没有用,如果你用了就会转化为对应的php

    标签只是为了方便你使用,标签能做到的功能原生php一定能做到,因为标签就是用原生php写的

  • 相关阅读:
    2009年放假时间安排
    省钱方便网上手机充话费
    为啥不能嵌入html?
    超出套餐流量的GPRS流量费竟然要贵100倍!怎么没有人管呢!这个价格怎么定的呢!
    2008汶川加油!2008中国加油!!
    thinkpad X200 破音特别厉害!郁闷啊!千万不要买水货!
    送走2008,迎接新的2009!
    "上海启明星电子商务有限公司"偷偷扣你的电话钱
    从公司到凯虹
    供应二级新疆细绒棉150吨
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/9037522.html
Copyright © 2011-2022 走看看