存档

‘ThinkPHP’ 分类的存档

ThinkPHP开发专题—-模板Volist标签

2010年4月22日 没有评论

每个模板系统都有各自不同功能的标签,而且在众多的标签中用作数据循环遍历的标签更是各有特色。
ThinkPHP的循环标签中Volist标签的功能是很强大而且考虑的也是非常全面的,大家一起来根据下列例子来学习。
Volist标签主要用于在模板中循环输出数据集或者多维数组。
通常模型的select和findall方法返回的结果是一个二维数组,可以直接使用volist标签进行输出。
在Action中首先对模版赋值:
$User = M(‘User’);
$list = $User->select();
$this->assign(‘list’,$list);
在模版定义如下,循环输出用户的编号和姓名:

<volist name=”list” id=”vo”>
{$vo.id}
{$vo.name}
</volist>

Volist标签的name属性表示模板赋值的变量名称,因此不可随意在模板文件中改变。id表示当前的循环变量,可以随意指定,但确保不要和name属性冲突,例如:

<volist name=”list” id=”data”>
{$data.id}
{$data.name}
</volist>

支持输出部分数据,例如输出其中的第5~15条记录

<volist name=”list” id=”vo” offset=”5″ length=’10′>
{$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是一样。

分类: ThinkPHP 标签: , ,

thinkphp自定义404页面

2010年2月4日 没有评论

定义EmptyAction.class.php

  • <?php
  • class EmptyAction extends Action{
  • function index(){
  • header(“Location: /404.html”);
  • }
  • }
  • ?>
分类: ThinkPHP 标签:

ThinkPHP中的比较条件写法

2010年1月18日 没有评论

eq:等于
neq:不等于
gt:大于
egt:大于等于
lt:小于
elt:小于等于

例如:
$condition["AddTime"] = array(array(‘egt’,$begintime),array(‘elt’,$endtime));
$condition['State'] = array(‘eq’, ‘active’);

分类: ThinkPHP 标签: ,

ThinkPHP中的like查询方法

2010年1月12日 没有评论

方法一:
$carrymodel = D(“Carry”);
$condition["FromAddress"] = array(“like”, “%”.$rname);
$condition["ToAddress"] = array(“like”, “%”.$rname);
$carryrecord = $carrymodel->where($condition)->findAll();

方法二:
$model = new Model();
$carryrecord = $model->table(‘dh_info_carry a’)
->field(‘a.*’)
->where(‘a.ToAddress like “%’.$rname.’” or a.FromAddress like “%’.$rname.’”‘)
->findAll();

分类: ThinkPHP 标签: