对thinkphp3.1查询条件array ('in',$getid)条件的理解

本文详细解析了ThinkPHP3.1中使用array('in', $getid)进行查询条件设置时,$getid参数可以是数组或数字字符串的形式,并提供了相应的代码实现和查询逻辑解释。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于thinkphp3.1查询条件array ('in',$getid)中的“$getid”,一直以来我都有点含糊,经过多次调试,现在终于有所收获。下面是操作代码片断:

..
$getid = $_REQUEST['id'];
$map['id'] = array ('in',$getid);
$News = M('News');        
$Newslist = $News->where($map)->select();    
if($Newslist !==false){
 $this->success();
}else{
 $this->error();
}        

对于上面 array ('in',$getid)的$getid,我将通过两种方法来探讨一下。      
当$getid是一个数组时(一维数组)  
"$getid "是一个一维数组,里面有一个或者多个元数,形式如array(1,2,3...)。现在通过"array ('in',$getid)"把它赋值给“$map['gid']”,作为连贯查询条件。查询结果将返回“操作成功”提示。
  
当$getid是数字型字符串时
  
先把$getid转换成字符串类型,如下代码:

$getid = $_REQUEST['id'];
$getids = implode(',', $getid);
$getid = is_array($getid) ? $getids : $getid;
        
 $map['id'] = array ('in',$getid);
 $News = M('News');        
 $Newslist = $News->where($map)->select();    
  if($Newslist !==false){
 $this->success();
}else{
 $this->error();
}        

转换后,$getid为字符串类型,形式如:'1,2,3...',查询结果将返回“操作成功”提示。
      通过上面的分析,可以知道查询条件array ('in',$getid)中的$getid可以是数组或者字符串。

 

本文首发WBlog博客,欢迎转载!转载请注明本文地址,谢谢。


本文地址:http://www.w3note.com/web/19.html

转载于:https://www.cnblogs.com/ewblgo/archive/2012/09/25/2701394.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值