繁体   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