Maison > base de données > tutoriel mysql > Laravel Eloquent ORM en Bangla Part - (Comparaison des modèles)

Laravel Eloquent ORM en Bangla Part - (Comparaison des modèles)

DDD
Libérer: 2025-01-16 20:07:11
original
332 Les gens l'ont consulté

Laravel Eloquent ORM in Bangla Part-(Comparing Models)

La comparaison de modèles (Comparaison de modèles) est un aspect important de Laravel Eloquent, qui est utile dans divers contextes. Par exemple, trouver des différences entre deux instances de modèle ou vérifier si un modèle a changé.

Laravel propose plusieurs méthodes de comparaison de modèles. Vous trouverez ci-dessous quelques méthodes et exemples :

1. Comparaison de modèles selon la méthode is() :

La méthode

is() compare deux instances de modèle. Cela vérifie si les deux modèles pointent vers le même enregistrement.

Utilisation :

<code class="language-php">use App\Models\Post;

$post1 = Post::find(1);
$post2 = Post::find(1);
$post3 = Post::find(2);

// মডেল তুলনা
if ($post1->is($post2)) {
    echo "পোস্ট ১ এবং পোস্ট ২ একই।";
} else {
    echo "পোস্ট ১ এবং পোস্ট ২ ভিন্ন।";
}

// পোস্ট ১ এবং পোস্ট ৩ তুলনা
if ($post1->is($post3)) {
    echo "পোস্ট ১ এবং পোস্ট ৩ একই।";
} else {
    echo "পোস্ট ১ এবং পোস্ট ৩ ভিন্ন।";
}</code>
Copier après la connexion
Copier après la connexion
La méthode

is() compare l'ID et la référence de deux modèles. S'il existe une instance du même enregistrement, renvoie true, sinon false.

2. Comparaison de modèles selon la méthode isNot() :

La méthode

isNot() est à l'opposé de la méthode is(). Il compare deux modèles et renvoie true s'ils diffèrent.

Utilisation :

<code class="language-php">use App\Models\Post;

$post1 = Post::find(1);
$post2 = Post::find(2);

if ($post1->isNot($post2)) {
    echo "পোস্ট ১ এবং পোস্ট ২ ভিন্ন।";
} else {
    echo "পোস্ট ১ এবং পোস্ট ২ একই।";
}</code>
Copier après la connexion

Cela fait le contraire de is(), vérifier la variance des modèles.

3. Comparaison de modèles à l'aide des méthodes isDirty() et isClean() :

Les méthodes

isDirty() et isClean() déterminent l'état des modifications des données du modèle.

  • isDirty() : true renvoie si un champ du modèle a changé.
  • isClean() : Renvoie true si le modèle n'a pas changé.

Utilisation :

<code class="language-php">use App\Models\Post;

$post1 = Post::find(1);
$post2 = Post::find(1);
$post3 = Post::find(2);

// মডেল তুলনা
if ($post1->is($post2)) {
    echo "পোস্ট ১ এবং পোস্ট ২ একই।";
} else {
    echo "পোস্ট ১ এবং পোস্ট ২ ভিন্ন।";
}

// পোস্ট ১ এবং পোস্ট ৩ তুলনা
if ($post1->is($post3)) {
    echo "পোস্ট ১ এবং পোস্ট ৩ একই।";
} else {
    echo "পোস্ট ১ এবং পোস্ট ৩ ভিন্ন।";
}</code>
Copier après la connexion
Copier après la connexion

isDirty() et isClean() sont utilisés pour suivre les modifications du modèle.

Les méthodes 4, 5 et 6 (Custom isEqual(), diff(), compare()) sont faciles à comprendre en conjonction avec les exemples ci-dessus et peuvent être personnalisées selon les besoins.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal