Sử dụng whereNull và whereNotNull Eloquent Collection trong Laravel Chuyên mục PHP và Laravel 2023-07-30 828 Lượt xem 13 Lượt thích 0 Bình luận

Làm việc với Laravel Eloquent, chúng ta luôn có khả năng để kiểm tra các trường null khi xây dựng các truy vấn trên các models. Chẳng hạn, nếu bạn muốn kiểm tra xem trường email_verified_at có rỗng hay không, bạn sẽ kiểm tra như này.
$users = User::whereNotNull('email_verified_at')->get();
Đây không phải là trường hợp nếu bạn muốn làm điều tương tự trên collection. Để kiểm tra similar condition, bạn sẽ check thủ công như vậy.
$users = User::all();
$unverifiedUsers = $users->whereStrict('is_verified_at', null);
$verifiedUsers = $users->where('is_verified_at', '!==', null);
Nhưng mọi thứ đã được thay đổi từ phiên bản Laravel 6.15.1. Có PR #31425 này cũng thêm whereNull và whereNotNull vào Collection . Vì vậy, bây giờ, bạn có thể thực hiện điều kiện tương tự mà bạn đã từng thực hiện trên Query builder, trên cả Collection . Đây là cách bạn có thể làm điều đó.
$users = User::all();
$unverifiedUsers = $users->whereNull('is_verified_at');
$verifiedUsers = $users->whereNotNull('is_verified_at');
Như bạn có thể thấy, chúng ta có một chút tiện lợi ở đây mà tôi nghĩ luôn được cộng đồng hoan nghênh.

Bình luận (0)