ThinkPHP6 ialah rangka kerja PHP yang sangat popular, dan Laravel ialah satu lagi rangka kerja PHP yang popular. Kedua-dua rangka kerja mempunyai ciri dan kelebihan tersendiri, tetapi enjin ORM (Pemetaan Hubungan Objek) Laravel dikenali sebagai "ORM terbaik dalam dunia PHP".
Apakah yang perlu kita lakukan jika kita ingin menggunakan Laravel's Eloquent ORM apabila menggunakan ThinkPHP6? Mari kita bincangkan secara terperinci cara menggunakan Laravel's Eloquent ORM dalam ThinkPHP6.
Eloquent ORM ialah salah satu komponen teras rangka kerja Laravel Ia menyediakan cara yang ringkas dan berkuasa untuk memproses data pangkalan data. Menggunakan Eloquent ORM, kita boleh memetakan data baris jadual pangkalan data ke objek PHP yang sepadan, dengan itu mencapai operasi data yang cekap tanpa menulis pernyataan SQL yang menyusahkan.
Kelebihan Eloquent ORM ialah ia menyediakan satu siri kaedah operasi berkuasa yang boleh membantu kami melakukan pertanyaan, tambah, kemas kini dan padam operasi dengan mudah. Pada masa yang sama, Eloquent ORM juga menyokong fungsi lanjutan seperti migrasi pangkalan data (Migrasi), pengikatan perhubungan (Perhubungan), dan pemuatan bersemangat (Eager Loading), yang meningkatkan pengalaman operasi pangkalan data kami semasa pembangunan projek dan meningkatkan kecekapan pembangunan.
Walaupun ThinkPHP6 sendiri turut menyediakan fungsi ORM, ia tidak menyokong Eloquent ORM. Oleh itu, jika kita ingin menggunakan Eloquent ORM semasa menggunakan rangka kerja ThinkPHP6, kita perlu membuat beberapa tetapan asas terlebih dahulu.
Sebelum menggunakan Eloquent ORM, kita perlu memasangnya terlebih dahulu. Sebelum pemasangan, pastikan kami telah memasang alat komposer, dan kemudian gunakan arahan berikut pada baris arahan untuk memasang:
composer require "illuminate/database"
Selepas pemasangan selesai, kami perlu mencipta direktori database
dalam projek direktori akar, dan Cipta fail config.php
dalam direktori ini. Dalam fail config.php
, kami perlu mengkonfigurasi maklumat sambungan pangkalan data, seperti yang ditunjukkan di bawah:
<?php return [ 'default' => 'mysql', 'connections' => [ 'mysql' => [ 'driver' => 'mysql', 'host' => 'localhost', 'database' => 'dbname', 'username' => 'dbuser', 'password' => 'dbpass', 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'strict' => true, 'engine' => null, ], ], ];
Memandangkan kami telah mengkonfigurasi maklumat sambungan pangkalan data dalam proses menggunakan ThinkPHP6, kami boleh mengkonfigurasinya secara langsung dalam Fail config.php
Gunakan item konfigurasi pangkalan data yang sama seperti ThinkPHP6.
Selepas memasang Eloquent ORM, kita perlu mencipta fail database
dalam direktori db.php
projek dan mengkonfigurasi maklumat asas yang sepadan, seperti ditunjukkan di bawah:
<?php use IlluminateDatabaseCapsuleManager as Capsule; $capsule = new Capsule; $capsule->addConnection([ 'driver' => 'mysql', 'host' => config('database.hostname'), 'database' => config('database.database'), 'username' => config('database.username'), 'password' => config('database.password'), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'strict' => true, 'engine' => null, ]); $capsule->setAsGlobal(); $capsule->bootEloquent();
Dalam kod di atas, kita perlu merujuk kelas illuminate/database
dalam Capsule
dan menggunakan kelas ini untuk mengkonfigurasi maklumat asas pangkalan data. Antaranya, kaedah addConnection
digunakan untuk menambah maklumat sambungan pangkalan data, manakala kaedah setAsGlobal
dan bootEloquent
digunakan untuk mendaftarkan Eloquent ORM ke dalam bekas perkhidmatan global dan memulakan Eloquent ORM.
Selepas melengkapkan konfigurasi di atas, kami boleh menggunakan Eloquent ORM untuk operasi pangkalan data. Dalam ThinkPHP6, kita boleh menggunakan fungsi app()
untuk mendapatkan contoh sambungan pangkalan data dengan cepat dan kelas DB
merangkum tika ini. ORM fasih melakukan pengkapsulan sekunder berdasarkan contoh sambungan pangkalan data ini.
Sebagai contoh, jika kita ingin menanyakan data jadual users
dalam Eloquent ORM, kita boleh menggunakan kod berikut:
use IlluminateDatabaseCapsuleManager as Capsule; // 创建一个 Eloquent ORM 实例 $capsule = new Capsule(); // 查询 users 表的数据 $users = Capsule::table('users')->get(); // 输出查询结果 foreach ($users as $user) { echo $user->name; }
Dalam kod di atas, kita menggunakan Capsule
kelas untuk mencipta contoh ORM Eloquent, kemudian panggil kaedah table
melalui contoh dan masukkan nama jadual, dan anda boleh melakukan operasi pertanyaan yang sepadan. Selain itu, kami juga boleh menggunakan fungsi kaya yang disediakan oleh Eloquent ORM untuk melaksanakan operasi seperti sekatan, pengisihan, pengelompokan, pengagregatan, dll. Untuk penggunaan khusus, sila rujuk dokumentasi rasmi Eloquent ORM.
Dalam artikel ini, kami meneroka secara terperinci cara menggunakan Laravel's Eloquent ORM dalam ThinkPHP6. Melalui konfigurasi maklumat asas dan contoh penggunaan Eloquent ORM, saya percaya bahawa pembaca mempunyai pemahaman tertentu tentang cara menggunakan Eloquent ORM untuk melaksanakan operasi pangkalan data dalam ThinkPHP6. Sudah tentu, jika kita ingin mengetahui lebih lanjut tentang lebih banyak fungsi dan ciri Eloquent ORM, kita boleh menyemak dokumentasi rasmi atau bahan berkaitan untuk dipelajari.
Atas ialah kandungan terperinci Menggunakan ORM Eloquent Laravel dalam ThinkPHP6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!