Rumah > pangkalan data > tutorial mysql > ORM Fasih Laravel dalam Bahagian Bangla-(Membandingkan Model)

ORM Fasih Laravel dalam Bahagian Bangla-(Membandingkan Model)

DDD
Lepaskan: 2025-01-16 20:07:11
asal
328 orang telah melayarinya

Laravel Eloquent ORM in Bangla Part-(Comparing Models)

Perbandingan model (Membandingkan Model) ialah aspek penting Laravel Eloquent, yang berguna dalam pelbagai konteks. Contohnya, mencari perbezaan antara dua tika model atau menyemak sama ada model telah berubah.

Laravel menyediakan beberapa kaedah untuk perbandingan model. Di bawah adalah beberapa kaedah dan contoh:

1. Perbandingan model menggunakan kaedah is():

Kaedah

is() membandingkan dua contoh model. Ini menyemak sama ada kedua-dua model menunjukkan rekod yang sama.

Penggunaan:

<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>
Salin selepas log masuk
Salin selepas log masuk
Kaedah

is() membandingkan ID dan rujukan dua model. Jika terdapat kejadian rekod yang sama, mengembalikan true, jika tidak false.

2. Perbandingan model menggunakan kaedah isNot():

Kaedah

isNot() adalah bertentangan dengan kaedah is(). Ia membandingkan dua model dan mengembalikan true jika ia berbeza.

Penggunaan:

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

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

if ($post1->isNot($post2)) {
    echo "পোস্ট ১ এবং পোস্ট ২ ভিন্ন।";
} else {
    echo "পোস্ট ১ এবং পোস্ট ২ একই।";
}</code>
Salin selepas log masuk

Ini melakukan yang bertentangan dengan is(), menyemak varians model.

3. Membandingkan model menggunakan kaedah isDirty() dan isClean():

Kaedah

isDirty() dan isClean() menentukan status perubahan data model.

  • isDirty(): Mengembalikan true jika mana-mana medan dalam model telah berubah.
  • isClean(): Mengembalikan true jika model tidak berubah.

Penggunaan:

<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>
Salin selepas log masuk
Salin selepas log masuk

isDirty() dan isClean() digunakan untuk menjejaki perubahan model.

Kaedah 4, 5 dan 6 (Custom isEqual(), diff(), compare()) mudah difahami bersama dengan contoh di atas dan boleh disesuaikan mengikut keperluan.

Atas ialah kandungan terperinci ORM Fasih Laravel dalam Bahagian Bangla-(Membandingkan Model). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan