Cách lấy last record of database table trong Laravel

Trong dự án nhiều khi chúng ta muốn lấy bản ghi cuối cùng trong 1 table nào đó. Để giải quyết vấn đề này chúng ta có thể sử dụng hàm latest() hoặc orderBy() trong Laravel 6+. Mình sẽ demo 3 cách lấy bản ghi cuối cùng trong table ở các ví dụ bên dưới

Trong dự án nhiều khi chúng ta muốn lấy bản ghi cuối cùng trong 1 table nào đó.
Để giải quyết vấn đề này chúng ta có thể sử dụng hàm latest() hoặc orderBy() trong Laravel 6+.
Mình sẽ demo 3 cách lấy bản ghi cuối cùng trong table ở các ví dụ bên dưới nhé.
Đầu tiên mình sẽ tạo một table items có các dữ liệu demo như bên dưới.

Using latest() belong to created_at field:

Khi sử dụng latest() mặc định nó sẽ lấy bản ghi cuối cùng dựa vào trường created_at trong table items.
Thêm code vào controller như bên dưới.
appHttpControllersItemController.php

<?phpnamespaceAppHttpControllers;useAppModelsItem;classItemControllerextendsController{/**
     * Display a listing of the resource.
     *
     * @return IlluminateHttpResponse
     */publicfunctionindex(){$last_record=Item::latest()->first()->toArray();dd($last_record);}}

Output:

array:7 [▼
  "id" => 4
  "title" => "Four"
  "description" => "[email protected]"
  "is_active" => 1
  "deleted_at" => null
  "created_at" => "2021-12-30T11:16:47.000000Z"
  "updated_at" => null
]

Using orderBy() belong to id field:

appHttpControllersItemController.php

<?phpnamespaceAppHttpControllers;useAppModelsItem;classItemControllerextendsController{/**
     * Display a listing of the resource.
     *
     * @return IlluminateHttpResponse
     */publicfunctionindex(){$last_record=Item::orderBy('id','DESC')->first()->toArray();dd($last_record);}}

Output:

array:7 [▼
  "id" => 4
  "title" => "Four"
  "description" => "[email protected]"
  "is_active" => 1
  "deleted_at" => null
  "created_at" => "2021-12-30T11:16:47.000000Z"
  "updated_at" => null
]

Using latest() belong to id field:

appHttpControllersItemController.php

<?phpnamespaceAppHttpControllers;useAppModelsItem;classItemControllerextendsController{/**
     * Display a listing of the resource.
     *
     * @return IlluminateHttpResponse
     */publicfunctionindex(){$last_record=Item::latest('id')->first()->toArray();dd($last_record);}}

Output:

array:7 [▼
  "id" => 4
  "title" => "Four"
  "description" => "[email protected]"
  "is_active" => 1
  "deleted_at" => null
  "created_at" => "2021-12-30T11:16:47.000000Z"
  "updated_at" => null
]

Hy vọng bài viết này sẽ giúp ích cho các bạn!

Nguồn: viblo.asia

Bài viết liên quan

WebP là gì? Hướng dẫn cách để chuyển hình ảnh jpg, png qua webp

WebP là gì? WebP là một định dạng ảnh hiện đại, được phát triển bởi Google

Điểm khác biệt giữa IPv4 và IPv6 là gì?

IPv4 và IPv6 là hai phiên bản của hệ thống địa chỉ Giao thức Internet (IP). IP l

Check nameservers của tên miền xem website trỏ đúng chưa

Tìm hiểu cách check nameservers của tên miền để xác định tên miền đó đang dùn

Mình đang dùng Google Domains để check tên miền hàng ngày

Từ khi thông báo dịch vụ Google Domains bỏ mác Beta, mình mới để ý và bắt đầ