php – laravel中whereOr和orWhere之间的区别

前端之家收集整理的这篇文章主要介绍了php – laravel中whereOr和orWhere之间的区别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在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()函数完成的,然后调用dynamicWhere().此方法然后解码您调用方法名称并将该信息保存为where条件.

现在有了whereOr,你实际上必须称之为:

->whereAgeOrGender(18,'male');

这意味着它为您提供了简单的语法,但却不如“真实”那么灵活.例如,它将始终使用=运算符.所以它绝对不适合你的情况.

原文链接:https://www.f2er.com/laravel/445158.html

猜你在找的Laravel相关文章