Heim >Datenbank >MySQL-Tutorial >Laravel Eloquent ORM in Bangla Teil – (Modelle vergleichen)
Modellvergleich (Modelle vergleichen) ist ein wichtiger Aspekt von Laravel Eloquent, der in verschiedenen Kontexten nützlich ist. Zum Beispiel das Finden von Unterschieden zwischen zwei Modellinstanzen oder das Überprüfen, ob sich ein Modell geändert hat.
Laravel bietet mehrere Methoden zum Modellvergleich. Nachfolgend finden Sie einige Methoden und Beispiele:
1. Modellvergleich mit der is()
-Methode:
is()
vergleicht zwei Modellinstanzen. Dadurch wird überprüft, ob die beiden Modelle auf denselben Datensatz verweisen.
<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>Die Methode
is()
vergleicht die ID und Referenz zweier Modelle. Wenn es eine Instanz desselben Datensatzes gibt, wird true
zurückgegeben, andernfalls false
.
2. Modellvergleich mit der isNot()
-Methode:
isNot()
-Methode ist das Gegenteil der is()
-Methode. Es vergleicht zwei Modelle und gibt true
zurück, wenn sie sich unterscheiden.
<code class="language-php">use App\Models\Post; $post1 = Post::find(1); $post2 = Post::find(2); if ($post1->isNot($post2)) { echo "পোস্ট ১ এবং পোস্ট ২ ভিন্ন।"; } else { echo "পোস্ট ১ এবং পোস্ট ২ একই।"; }</code>
Dies bewirkt das Gegenteil von is()
und überprüft die Varianz der Modelle.
3. Vergleich von Modellen mit den Methoden isDirty()
und isClean()
:
isDirty()
und isClean()
ermitteln den Status von Modelldatenänderungen.
isDirty()
: Gibt true
zurück, wenn sich ein Feld im Modell geändert hat.isClean()
: Gibt true
zurück, wenn sich das Modell nicht geändert hat.<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>
isDirty()
und isClean()
werden verwendet, um Modelländerungen zu verfolgen.
Methoden 4, 5 und 6 (Custom isEqual(), diff(), Compare()) sind in Verbindung mit den obigen Beispielen leicht zu verstehen und können nach Bedarf angepasst werden.
Das obige ist der detaillierte Inhalt vonLaravel Eloquent ORM in Bangla Teil – (Modelle vergleichen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!