Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengoptimumkan Operasi CRUD Dengan Berkesan Menggunakan Kaedah Laravel Eloquent's firstOrNew()?
Mengoptimumkan Operasi CRUD dengan Laravel Eloquent
Apabila bekerja dengan pangkalan data dalam Laravel, adalah perkara biasa untuk memasukkan atau mengemas kini rekod. Untuk mencapai matlamat ini, pembangun sering menggunakan pernyataan bersyarat yang menyemak sama ada rekod wujud sebelum membuat keputusan untuk melakukan sisipan atau kemas kini.
Kaedah firstOrNew()
Mujurlah, Eloquent menyediakan penyelesaian yang lebih cekap melalui kaedah firstOrNew(). Kaedah ini menyemak kewujudan rekod berdasarkan kriteria yang ditetapkan dan mengembalikan rekod padanan pertama jika ditemui; jika tidak, ia mencipta contoh baharu model.
Contoh Penggunaan
Pertimbangkan contoh berikut:
<code class="php">$shopOwner = ShopMeta::where('shopId', '=', $theID) ->where('metadataKey', '=', 2001) ->firstOrNew(); if ($shopOwner->exists) { // Update the existing record } else { // Insert a new record }</code>
Dalam contoh ini, kaedah firstOrNew() digunakan untuk mencari rekod ShopMeta berdasarkan shopId dan metadataKey. Jika rekod wujud, blok if dilaksanakan dan rekod sedia ada dikemas kini. Jika tidak, blok else dilaksanakan dan rekod baharu dimasukkan.
Contoh Lanjutan
Berikut ialah contoh yang lebih komprehensif yang mempamerkan kuasa firstOrNew():
<code class="php">$user = User::firstOrNew(array('name' => Input::get('name'))); $user->foo = Input::get('foo'); $user->save();</code>
Dokumentasi Dikemas Kini
Sila ambil perhatian bahawa pautan dokumentasi yang disediakan dalam jawapan tidak lagi terkini. Untuk versi terkini Laravel, rujuk dokumentasi berikut:
[Dokumentasi Laravel yang dikemas kini](https://laravel.com/docs/8.x/eloquent)
Atas ialah kandungan terperinci Bagaimana untuk Mengoptimumkan Operasi CRUD Dengan Berkesan Menggunakan Kaedah Laravel Eloquent's firstOrNew()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!