php – laravel中whereOr和orWhere之间的区别
发布时间:2020-12-14 19:56:19 所属栏目:大数据 来源:网络整理
导读:我在Laravel的代码中使用whereOr和orWhere都可以,但有时会产生不同的结果 $user_query = User::select( 'users.id','users.username','users.first_name','users.last_name','users.photo' ) -where('users.status',1) -where('users.id','!=',$id) -where('
我在Laravel的代码中使用whereOr和orWhere都可以,但有时会产生不同的结果
$user_query = User::select( 'users.id','users.username','users.first_name','users.last_name','users.photo' ) ->where('users.status',1) ->where('users.id','!=',$id) ->where('users.username','like','%'.$searchkey.'%') ->orWhere('users.first_name','%'.$searchkey.'%') ->orwhere('users.last_name','%'.$searchkey.'%')->get(); // ->whereOr('users.first_name','%'.$searchkey.'%') // ->whereOr('users.last_name','%'.$searchkey.'%')->get(); whereOr和orWhere之间的区别是什么
他们俩都可以这样做.但不是真的,因为你在哪里使用错误. whereOr是动态的地方.在
this blogpost中对它们进行了更深入的描述
对于动态wheres,条件不仅定义参数,还定义方法名称本身.这是一个例子: ->whereAge(18); 它可以被翻译成 ->where('age','=',18); 这是通过__call()函数完成的,然后调用 现在有了whereOr,你实际上必须称之为: ->whereAgeOrGender(18,'male'); 这意味着它为您提供了简单的语法,但却不如“真实”那么灵活.例如,它将始终使用=运算符.所以它绝对不适合你的情况. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |