phpvolist
❶ thinkphp volist怎么使用
<volistname="list"id="vo">
{$vo.id}:{$vo.name}<br/>
</volist>
后台传过来名为list的数组变量
❷ thinkphp volist 输出值
{$vo["'detection_'.$vo['id']"]}
php点击链接加入群【西安PHP提升群】:http://jq.qq.com/?_wv=1027&k=dyf0y3
❸ thinkphp volist标签获得的变量 在php代码中怎么输出
volist 标签
在模块操作中,select() 方法返回的是一个二维数组,可以用 volist 直接输出:
<volist name="list" id="vo">
用 户 名:{$vo['username']}<br />
电子邮件:{$vo['email']}<br />
注册时间:{$vo['regdate']|date="Y-m-d H:i",###}
</volist>
如果想输出多维数组,请参看《ThinkPHP 模板 Volist 标签嵌套循环输出多维数组》
注意:name的属性值 list (name="list")不可随意改变,需要与操作中的模板赋值指令对应:
$this->assign( "list", $list );
id 表示循环变量,可以随意指定,但不得与 name 属性冲突。
输出部分数据
如果要输出结果集中的部分数据,需要指定 offset(数据指针) 与 length(数据数据条数) 属性。
输出第 5~14 条记录:
<volist name="list" id="vo" offset="5" length='10'>
用 户 名:{$vo['username']}<br />
电子邮件:{$vo['email']}<br />
注册时间:{$vo['regdate']|date="Y-m-d H:i",###}
<hr />
</volist>
❹ PHP volist怎么修改大神来
不知道你用的什么CMS,这里只看你给的代码,试试下面的代码会把第一个显示成红色背景吗,如果不行把$gikey eq 0 改成$gikey eq 1再试试
<volist name="gval['items']" id='gi' key="gikey">
<li <if condition="$gikey eq 0">style="background:#ff0000;"</if><if condition="$gikey%3 eq 0">style="margin-right:0;"</if>>
<a target="_blank" href="{:u('item/index',array('id'=>$gi['id']))}">
<img url="{:base64_encode($gi['simg'])}" class="pg_pic_s encode_url">
</a>
</li>
</volist>
❺ thinkphp的volist标签,怎么设置自增序号呢希望页面可以这么展示,单1,2,3不是数据库取出来的
请查看thinkphp的官方文档第8章模板引擎第9节Volist标签,其中提到volist的属性中有一个key属性,原文:
key(可选):循环的key变量,默认值为i
这个就是你的自增序号,而且默认变量就是$i,也就是说在你的volist标签之内,可以直接使用$i
<volistname="vlist"id="v">
<{$i}>//直接使用$i
</volist>
❻ thinkPHP <volist>标签 循环输出表格 怎么动态设定循环次数呢
在使用ThinkPHP的volist标签时,单重循环是比较常用的,但有时候需要用到多重嵌套循环。
方法步骤:
Action代码:
publicfunctionindex(){
$prod=I("get.prod_en");
$id=I("get.id",0,"int");
if($prod==""){
$serviceProct=array();//多重循环遍历的数组
//数据保存在两张表中,这里通过循环初始化$serviceProct数组
$service=M("proct_class")->order("oidASC")->select();
for($i=0;$i<count($service);$i++)
{
array_push($serviceProct,array("srvName"=>$service[$i]["pc_cn"],"proct"=>M("proct")->where("prod_class_id=".$service[$i]["pcid"])->order("oidASC")->select()));
}
//如果要在模板中输出变量,必须在在控制器中把变量传递给模板,系统提供了assign方法对模板变量赋
值,无论何种变量类型都统一使用assign赋值。
$this->assign("serviceProct",$serviceProct);
$this->display();
}else{
if($id>0){
$this->display("detail");
}else{
$this->assign('prod_en',$prod);
$clsList=M("question_class")->order("oidASC")->select();
$this->assign('clsList',$clsList);
$qusList=M("question")->order("oidASC")->select();
$this->assign('qusList',$qusList);
$this->display("list");
}
}
模板代码:
<volistname="serviceProct"id="sp"key="i">
<dlclass="dlistodd">
<dt>{$sp.srvName}</dt>
<volistname="sp.proct"id="pd"key="j">
<dd><ahref="/index.php/question?prod_en={$pd.prod_en}">{$pd.prod_cn}</a></dd>
<ifcondition="$jltcount($sp['proct'])">
<dd>|</dd>
</if>
</volist>
<ifcondition="count($sp['proct'])EQ0">
<dd> </dd>
</if>
</dl>
</volist>
当使用多重嵌套循环时,需要为每一个volist指定key值,通过
<if condition="$j lt count($sp['proct'])">
判断是否为数组中的最后一个元素。
❼ thinkphp中volist标签 增加if判断。
<volist name="data1" id="vo1">
<?php $i=1;?>
<volist name="data2" id="vo2">
<?php if($i<=5){?>
<if condition="$vo2['fid'] eq $vo1['id'] "> $vo2.name}<br> </if>
<?php }
$i++;
?>
</volist>
</volist>
❽ ThinkPHP中foreach和volist的区别
ThinkPHP中foreach和volist的区别
1.foreach标签
foreach标签用于循环输出:
foreach(name,item,key)
name(必须):要输出的数据模板变量
item(必须):循环单原变量
key(可选):循环的key变量,默认值为key
示例:
<foreach name='list' item='vo'>
{$vo.id}
{$vo.name}
</foreach>
foreach标签相对于volist标签简洁,没有volist标签那么多功能。优势是可以对对象进行遍历输出,而volist标签通常是用于输出数组。
2.volist标签
volist标签主要用于在模板中循环输出数据集或者多维数组
volist(name,id,offset,length,key,mod,empty)
name(必须):要输出的数据模型变量
id(必须):循环变量
offset(可选):要输出数据的offset
length(可选):输出数据的长度
key(可选):循环的key变量,默认值为i
mod(可选):对key值取模,默认为2(用于偶数行查询等)
empty(可选):如果数据为空显示的字符串
通常模型的select方法返回的结果是一个二维数组,可以直接使用volist标签进行输出。
在Action中首先对模板赋值:
$user=M('User');
$list=$user->select();
$this->assign('list',$list);
$this->display();
在模板定义如下,输出编号和姓名
<volist name='list' id='vo'>
{$vo.id}
{$vo.name}
</volist>
支持输出部分数据,例如输出其中的第5-15条记录:
<volist name='list' id='vo' offset='5' length='10'>
{$vo.id}
{$vo.name}
</volist>
输出偶数行记录:
<volist name='list' id='vo' mod='2'>
<eq name="mod" value='1'>{$vo.name}</eq>
</volist>
mod属性还用于控制一定记录的换行:
<volist name='list' id='vo' mod='5'>
{$vo.name}
<eq name="mod" value='4'><br/></eq>
</volist>
输出循环变量:
<volist name='list' id='vo' key='k'>
{$k}.{$vo.name}
</volist>
如果没有指定key属性的话,默认使用循环变量i,例如:
<volist name="list" id="vo" >
{$i}.{$vo.name}
</volist>
如果要输出数组的索引,可以直接使用key变量,和循环变量不同的是,这个key是由数据本身决定,而不是循环控制的,例如:
<volist name="list" id="vo" >
{$key}.{$vo.name}
</volist>
volist还有一个别名iterate,用法和volist是一样。
从2.1版开始允许使用函数设定数据集,如:
<volist name=":fun('arg')" id="vo">{$vo.name}</volist>
❾ ThinkPHP-<volist></volist>标签,模板调用循环输出数据如何按照指定顺序排列
首先volist只是你输出的结果,foreach输出,所以传到你前端的volist就是一个固定的list.
所以你要在控制器里改,给你个参考:
$list = Db::name('user01')->where($map)->order(array('name'=>'asc'))->select();
user01就是数据库的名字,
$map是你查询的条件,
order就是排序,name就是你要排序的字段,当然也可以是ID,手机号,asc就是正序排列。
写到这,你再不懂我就没办法了
❿ thinkphp volist怎么调用有参方法
where赋值错误了样
$xy_school_typ=$xy_school_type->where('pid='.$id)->select();
试下这个呢