牛骨文教育服务平台(让学习变的简单)
博文笔记

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

创建时间:2013-03-14 投稿人: 浏览次数:159

关于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

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。