2015-04-14 73 views
10

Tôi đang truy cập cơ sở dữ liệu của mình bằng mô hình bằng cách sử dụng mã sau đây.Làm thế nào để kiểm tra đối tượng của một mô hình rỗng trong laravel?

$persons = WysPerson::where('family_id', $id)->get(); 

Tôi đã chọn $persons trống hoặc không bằng cách sử dụng mã sau.

if($persons){ 
     var_dump($persons); 
    } 

Thực tế $persons trống. Nhưng tôi nhận được kết quả cho var_dump như

object(Illuminate\Database\Eloquent\Collection)#417 (1) { ["items":protected]=> array(0) { } }

Làm thế nào tôi sẽ kiểm tra $persons là trống rỗng? Có ai giúp được không?

+0

@ Bộ sưu tập tự động không phải là mảng. isEmpty là phương pháp đúng như được trả lời dưới đây bởi Angel –

+0

Có thể trùng lặp của [Bộ sưu tập Eloquent: đếm và phát hiện trống] (http://stackoverflow.com/questions/20563166/eloquent-collection-counting-and-detect-empty) –

Trả lời

0

thử này.

is_null($var)?abort('empty'):abort('filled') 
2

Sử dụng chức năng đếm

@if (count ($ người))

+0

có vấn đề với câu trả lời của bạn, nếu bạn quên thực hiện truy vấn bằng -> get() và chỉ để lại truy vấn ở vị trí đếm sẽ trả về 1. isEmpty sẽ ném một ngoại lệ trong sơ đồ lớn của mọi thứ là tốt hơn. – Cptmaxon

+0

Và kiểm tra số lượng bộ sưu tập sẽ không hoạt động, cho đến khi nó là bộ sưu tập Laravel – Sigismund

1

Nếu bạn có bộ sưu tập hùng hồn, gọi hàm isEmpty() như thế này:

$persons->isEmpty(); 

trở lại này đúng hay sai. Hy vọng điều này sẽ hữu ích.

Các vấn đề liên quan