av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Laravel多條件where查詢語句使用詳解

瀏覽:8日期:2022-06-13 18:12:34
目錄引言使用多條件的 where 語句使用條件性的 where 查詢引言

在使用 Laravel 開發應用的時候,還是會經常遇到多條件的查詢語句,比如一個網站的商品篩選頁面就有可能是這樣子:

http://jd.com/products?color=black&size=xl&orderBy=price&sort=desc

使用多條件的 where 語句

這種方式的篩選其實我們就會使用多條件的 where 語句來做,比如我們通常會看到類似下面的代碼:

$query = Product::newInstance();if ($request->color) { $query->whereColor($request->color);}if ($request->size) { $query->whereSize($request->size);}if ($request->orderBy && $request->sort) { $query->orderby($request->orderBy, $request->sort);}$products = $query->get();

那如果說,你需要一個默認的排序結果的話,可以這樣:

...其他代碼if ($request->orderBy && $request->sort) { $query->orderby($request->orderBy, $request->sort);} else { $query->orderby('price', 'desc');}...其他代碼使用條件性的 where 查詢

然而如果說你使用條件性的 where 查詢的話,可以這樣:

$products = Product::when($request->color, function ($query) use ($request) { return $query->whereColor($request->color);})->when($request->size, function ($query) use ($request) { return $query->whereSize($request->size);})->when($request->orderBy && $request->sort, function ($query) use ($request) { return $query->orderBy($request->orderBy, $request->sort);})->get();

需要默認排序的情況則是這樣:

...其他代碼->when($request->orderBy && $request->sort, function ($query) use ($request) { return $query->orderBy($request->orderBy, $request->sort);}, function ($query) { return $query->latest('price');})...其他代碼

到這里就可以解決 Laravel 的多條件查詢了!

以上就是Laravel多條件where查詢語句使用詳解的詳細內容,更多關于Laravel多條件where查詢的資料請關注好吧啦網其它相關文章!

標簽: PHP
主站蜘蛛池模板: 久久久久久久久国产精品 | 福利视频二区 | 91玖玖| 黑森林av| 成人在线免费视频 | 亚洲区一区二 | 青青草视频污 | 视频爱爱免费视频爱爱太爽 | 亚洲黄色成人 | 午夜视频网站 | 欧美日韩一区二区在线观看 | 国产福利av | 91国内视频 | 成人在线a | 免费看黄色大片 | 成人永久免费 | 最新国产在线视频 | 久久久久久久久久久国产 | 久操视频在线观看 | 在线观看中文字幕 | 日韩在线免费视频 | 香蕉视频色版 | 激情网五月天 | 亚洲综合另类 | 一级毛片一级毛片 | 成人一区二区视频 | 免费午夜视频 | 欧美在线播放视频 | 看av| 狠狠干在线视频 | 国产黄色免费网站 | 人与拘一级a毛片 | 久久久久伊人 | 在线观看免费av网站 | 亚洲影院在线 | 久久久一本 | 日本一级做a爱片 | 男人午夜影院 | 欧美在线激情 | 午夜视频 | 亚洲第一伊人 |