laravel where中多条件查询

 

1、

http://www.mobanstore.com/doc/bianchengkaifa/119.html

复制代码
//初学laravel 发现他的查询构造器很好用
//如下
$user = DB::table('users')->where('name', 'John')->first();
var_dump($user->name); //但是 如果where里面有多个查询条件怎么办呢? 我查了查源码 原来是可以用数组的,这样就灵活多了 public static function article_data($id) {   //$id = Input::get('id');   $where = array('a.id' => $id, 'a.rm'=>0); // 关键是这里   $data = DB::table('article AS a')     //->where('a.id', '=', $id)     ->where($where) ->leftJoin('category AS b', 'a.catid', '=', 'b.id') ->select('a.*', 'b.name AS catname', 'b.id AS catid' ) ->get();   if($data)   {     return $data[0];   }   //$sql = DB::getQueryLog();   //var_export( $sql);die; }
复制代码

 

2、

http://www.cnblogs.com/yjf512/p/4031782.html

复制代码
//解决办法:在基类中扩展一个multiwhere 
//于是我就在BaseModel中定义了:

    // 多where
    public function scopeMultiwhere($query, $arr)
    {
        if (!is_array($arr)) {
            return $query;
        }
 
        foreach ($arr as $key => $value) {
            $query = $query->where($key, $value);
        }
        return $query;
    }

 

//这样子,上面的语句就可以这么使用:
Student::multiwhere([‘female’=>1, ’teacher_id’ => 4, ‘class_id’ => 3])->get();
复制代码

 

posted @   忘忧般若汤  阅读(11699)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示