当前位置:首页 » ThinkPHP框架知识

ThinkPHP分页中的条件查询问题

2011-06-03 10:52 本站整理 浏览(5843)

今天整理TP的分页资料,发现论坛上有不少人对分页时带入条件查询问题感到有问题。

主要问题就是集中在传入的条件是二维数组,按照手册例子无法解析。

其实这里面可能有个小小的误会,就是将查询的条件当传入的条件。

以例子说明:

搜索所有用户状态为1且电子邮件含有163的用户,url地址如下:

url大概为:xxx.com/Index/search/status/1/email/163

// 获取查询参数

$map['status'] = $_GET['status'];

$map['email'] = $_GET['email'];

foreach($map as $key=>$val) {   

  $Page->parameter   .=   "$key=".urlencode($val)."&";   

}

// 构造实际查询条件

$condition['status'] = $_GET['status'];

$condition['email'] = array('like',"%".$_GET['email']."%");

我们在查询时,使用where($condition)即可。

经过实际测试是没问题的,不会存在所谓“条件是二维数组,按照手册例子无法解析”的问题的,手册例子是正确的。