簡體   English   中英

laravel,如何檢查這是否是最后一條記錄

[英]laravel, How to check if this is the last record

如何檢查當前記錄是否是模型中的最后一條記錄?

   $lastorder=Order::find($order_id);
    if($lastorder->last())

您可以在一次數據庫往返中完成所有操作!

在 MySQL 中你會這樣寫:

SELECT *
FROM oders
WHERE id = (SELECT MAX(id) FROM orders) AND id = [$order_id]

所以在雄辯你會寫這樣的東西:

Order::where('id', $order_id)
     ->where('id', function($q) {
         $query->selectRaw('MAX(id)')
               ->from('orders');
     })->first();

檢查它是否為null ,您就會知道!

$orders = Order::where('id','>=', $order_id)->get();

$order = $orders->first();

if($orders->count() > 1) {
   //...
   // NOT the last record :(
   //...
} else { 
   //...
   // Last record :)
   //...
}
$order=Order::find($order_id);
$last_record = Order::orderBy('id', 'desc')->first();
if($order->id == $last_record->id)
{
    //last record;
}

假設 Order 表包含 id 作為主鍵。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM