Rumah >rangka kerja php >Laravel >Pembangunan Laravel: Bagaimana untuk menggunakan Eloquent ORM untuk pertanyaan pangkalan data?
Laravel ialah rangka kerja pembangunan PHP yang popular yang menyediakan satu siri alatan dan fungsi tambahan untuk mempercepatkan pembangunan aplikasi web. Antaranya, Eloquent ORM ialah salah satu alat yang digunakan untuk operasi pangkalan data dalam rangka kerja Laravel, membolehkan pembangun Laravel membuat pertanyaan dan mengendalikan pangkalan data dengan lebih cepat. Dalam artikel ini, kita akan mendalami cara menggunakan Eloquent ORM untuk pertanyaan pangkalan data.
Pertama, kita perlu memasang Eloquent ORM dalam aplikasi Laravel kami. Kita boleh memasang Eloquent ORM melalui Composer, buka terminal, masukkan folder di mana projek Laravel terletak, dan masukkan arahan berikut:
composer require illuminate/database
Selepas pemasangan selesai, kita perlu menetapkan sambungan pangkalan data dalam konfigurasi /database.php, seperti berikut Seperti yang ditunjukkan:
'connections' => [ 'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), 'unix_socket' => env('DB_SOCKET', ''), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'strict' => true, 'engine' => null, ], ],
Kami juga perlu menetapkan maklumat berkaitan sambungan pangkalan data dalam fail .env, seperti yang ditunjukkan di bawah:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME=root DB_PASSWORD=
Gunakan Untuk melaksanakan pertanyaan pangkalan data dengan Eloquent ORM, kita perlu mentakrifkan model terlebih dahulu. Model merujuk kepada kelas php yang mewakili jadual pangkalan data. Dalam Laravel, kita boleh menjana model melalui arahan artisan seperti berikut:
php artisan make:model User
Ini akan mencipta model bernama Pengguna, yang akan dipetakan ke jadual pengguna dalam pangkalan data secara lalai. Jika anda ingin memetakan ke jadual lain, nyatakan nama jadual dalam model menggunakan atribut $table.
class User extends Model { protected $table = 'my_users'; }
Setelah model ditakrifkan, kita boleh menggunakan Eloquent ORM untuk menanyakan pangkalan data. Berikut ialah beberapa operasi pertanyaan yang biasa digunakan:
(1) Tanya semua rekod
$users = User::all();
(2) Tanya satu rekod berdasarkan ID
$user = User::find(1);
(3) Berasaskan pertanyaan pada syarat lain Set keputusan
$users = User::where('name', 'John')->get();
Kita boleh menambah satu siri kekangan dalam kaedah where, seperti sama dengan, tidak sama dengan, lebih besar daripada, kurang daripada, dalam, dsb.
$users = User::where('name', '=', 'John')->get(); $users = User::where('age', '>', 18)->get(); $users = User::whereIn('id', [1, 2, 3])->get();
(4) Isih
$users = User::orderBy('name', 'desc')->get();
(5) Soal lajur yang ditentukan
$users = User::select('name', 'email')->get();
Kita boleh lulus berbilang parameter dalam kaedah pilih, setiap parameter mewakili lajur untuk disoal nama.
(6) Hadkan set hasil
$users = User::skip(10)->take(5)->get();
Kita boleh menggunakan kaedah langkau dan ambil untuk melaksanakan paging Kaedah langkau digunakan untuk melangkau bilangan rekod tertentu, dan kaedah ambil adalah digunakan untuk mengembalikan bilangan rekod yang ditentukan.
(7) Menggunakan fungsi agregat
$avg_age = User::avg('age'); $max_age = User::max('age'); $min_age = User::min('age'); $count = User::count();
Kita boleh menggunakan beberapa fungsi agregat, seperti purata, maks, min, kiraan, dsb.
Menggunakan Eloquent ORM untuk mengemas kini rekod, kami boleh menanyakan rekod dahulu dan kemudian memanggil kaedah simpan pada contoh model.
$user = User::find(1); $user->name = 'John'; $user->save();
Kami juga boleh menggunakan kaedah kemas kini untuk mengemas kini berbilang rekod:
User::where('active', 1)->update(['status' => 'inactive']);
Menggunakan Eloquent ORM untuk memadam rekod, kami boleh Mula-mula Tanya rekod dan kemudian panggil kaedah padam pada contoh model.
$user = User::find(1); $user->delete();
Kami juga boleh menggunakan kaedah musnah untuk memadamkan berbilang rekod:
User::destroy([1, 2, 3]);
Ini akan memadamkan rekod dengan ID 1, 2 dan 3.
Dalam artikel ini, kami memperkenalkan secara terperinci cara menggunakan Eloquent ORM untuk pertanyaan pangkalan data. Eloquent ORM ialah alat yang sangat berkuasa dan fleksibel dalam rangka kerja Laravel, yang boleh membantu kami membina pertanyaan pangkalan data yang cekap dan boleh diselenggara dengan cepat. Jika anda mempunyai sebarang soalan atau komen tentang Eloquent ORM, sila tinggalkan mereka dalam ulasan.
Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk menggunakan Eloquent ORM untuk pertanyaan pangkalan data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!