Rumah  >  Artikel  >  rangka kerja php  >  Bagaimana untuk menentukan medan dalam laravel

Bagaimana untuk menentukan medan dalam laravel

PHPz
PHPzasal
2023-04-12 09:12:381107semak imbas

Laravel ialah rangka kerja aplikasi web yang sangat baik dengan struktur fleksibel dan set ciri yang kaya menjadikannya pilihan pertama banyak pembangun. Dalam Laravel, menentukan medan bermakna memilih medan tertentu sahaja, bukan semua medan, semasa mengendalikan pangkalan data. Ini berguna dalam banyak situasi, contohnya: jika anda hanya mengambil berat tentang beberapa data dalam jadual dan tidak mahu menanyakan semua data, atau jika hasil pertanyaan adalah besar dan prestasi perlu dipertingkatkan.

Dalam artikel ini, kami akan memperkenalkan cara untuk menentukan medan dalam Laravel, membolehkan anda mengendalikan pangkalan data dengan lebih fleksibel dan meningkatkan prestasi aplikasi anda.

  1. Gunakan kaedah select() untuk menentukan medan

Pembina pertanyaan Laravel menyediakan kaedah select() yang boleh digunakan untuk menentukan medan untuk dipilih. Kaedah ini menerima satu atau lebih parameter, yang boleh menjadi rentetan yang mengandungi senarai nama medan yang dipisahkan koma untuk dipilih, atau berbilang rentetan, setiap rentetan mewakili medan yang akan dipilih. Berikut ialah kod sampel untuk menentukan medan menggunakan kaedah select():

$users = DB::table('users')->select('id', 'name', 'email')->get();

Dalam contoh di atas, kami lulus parameter select() dalam kaedah 'id', 'name', 'email', yang bermaksud hanya ketiga-tiga ini medan dalam jadual dipilih. Kaedah get() digunakan untuk melaksanakan pertanyaan dan mengembalikan hasil pertanyaan.

  1. Gunakan atribut $fillable model

Jika anda menggunakan model Laravel (Model), anda boleh menggunakan atribut $fillable model untuk menentukan perkara yang dibenarkan Medan untuk tugasan batch. Dengan cara ini, apabila anda memanggil kaedah create() atau update() model, hanya medan yang dinyatakan dalam atribut $fillable akan diberikan nilai. Berikut ialah kod sampel untuk menentukan medan menggunakan atribut $fillable:

class User extends Model
{
    protected $fillable = ['name', 'email', 'password'];
}

Dalam contoh di atas, kami telah menentukan tiga medan menggunakan atribut $fillable: name, email dan password. Jika anda memanggil kaedah create() model dan lulus nilai tiga medan ini, nilai ini akan disimpan secara automatik ke pangkalan data.

  1. Menggunakan atribut $guarded model

Berbeza dengan atribut $fillable, model Laravel juga menyediakan atribut yang dipanggil $guarded yang boleh Digunakan untuk menentukan medan yang tidak dibenarkan diubah melalui tugasan pukal. Jika anda menentukan atribut $guarded, medan yang dinyatakan dalam atribut create() tidak disertakan semasa memanggil kaedah update() atau $guarded model untuk tugasan pukal. Berikut ialah kod sampel untuk menentukan medan menggunakan atribut $guarded:

class User extends Model
{
    protected $guarded = ['id', 'created_at', 'updated_at'];
}

Dalam contoh ini, kami telah menentukan medan $guarded, id dan created_at menggunakan atribut updated_at . Medan ini akan dikecualikan semasa melakukan tugasan pukal.

  1. Gunakan kaedah pluck() untuk menentukan satu medan

Jika anda hanya perlu menanyakan nilai satu medan dalam jadual, anda boleh menggunakan pertanyaan kaedah pluck() pembina. Kaedah ini menerima parameter yang mewakili nama medan yang anda ingin tanya. Berikut ialah kod sampel untuk menentukan medan tunggal menggunakan kaedah pluck():

$name = DB::table('users')->where('id', 1)->pluck('name');

Dalam contoh di atas, kami menggunakan kaedah where() untuk menapis rekod yang id adalah sama kepada 1, dan gunakan Kaedah pluck() memilih nilai medan name. Pertanyaan ini mengembalikan rentetan yang mengandungi nilai medan yang ditentukan.

Ringkasan

Di atas ialah empat kaedah untuk menentukan medan dalam Laravel. Menggunakan kaedah di atas, anda boleh mengendalikan pangkalan data dengan lebih fleksibel dan meningkatkan prestasi aplikasi. Tidak kira kaedah yang anda pilih, apabila menanyakan sejumlah besar data, menanyakan hanya medan yang anda perlukan adalah amalan yang baik dan boleh mengurangkan volum pemindahan data dan masa pelaksanaan pertanyaan dengan ketara.

Atas ialah kandungan terperinci Bagaimana untuk menentukan medan dalam laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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