Comment compter et détecter les collections vides avec Laravel Eloquent ?

Introduction

L’ORM Eloquent inclus avec Laravel vous fournit un moyen facile d’interagir avec votre base de données. Cela simplifie toutes les opérations CRUD (Create, read, update, and delete) et toute autre requête de base de données.

Laravel fournit un grand nombre de méthodes pratiques que vous pouvez utiliser pour travailler avec vos collections Eloquent.

Dans ce tutoriel, vous apprendrez à compter et détecter les collections vides de Laravel Eloquent.!

Vérifier si une collection est vide

Afin de vérifier si une collection est vide, vous pouvez utiliser la fonction isEmpty() . Cela se présenterait comme suit :

$posts= Model::where('active', true)->get();

if ($posts->isEmpty($posts)) {
    
}

Vérifier si une collection est pas vide

Similaire à la isEmpty() il existe une méthode isNotEmpty() méthode. La syntaxe est la même :

$posts = Model::where('active', true)->get();

if ($posts->isNotEmpty($posts)) {
    
}

Cela peut être très pratique pour afficher les messages sur un site Web, par exemple, afin d’indiquer que l’utilisateur n’a pas encore ajouté de messages.

Compter les enregistrements d’une collection

Avec SQL, si vous voulez savoir combien d’enregistrements correspondent à une requête spécifique, vous pouvez utiliser la fonction COUNT(*) la syntaxe serait la suivante :

SELECT COUNT(*) FROM posts WHERE active='1';

Dans le cas où vous avez 5 messages actifs, le résultat sera 5.

Lorsqu’on compte le total des éléments d’une collection, la méthode est aussi appelée count(). La syntaxe serait la suivante :

$posts = Model::where('active', true)->get();

if ($posts->count() > 0) {
    // Plus que 0 posts
} else {
    / 0 posts
}

Le site count() renvoie essentiellement le nombre total d’enregistrements dans le résultat.

Si vous vouliez vérifier si vérifier qu’un enregistrement spécifique est « non nul » avec Laravel Eloquent Assurez-vous de consulter cet article ici.

Nouveau Tutoriel

Newsletter

Ne manquez jamais les nouveaux conseils, tutoriels et autres.

Pas de spam, jamais. Nous ne partagerons jamais votre adresse électronique et vous pouvez vous désabonner à tout moment.