Rumah > pembangunan bahagian belakang > tutorial php > Cara menggunakan Eloquent ORM untuk operasi pangkalan data dalam rangka kerja Laravel

Cara menggunakan Eloquent ORM untuk operasi pangkalan data dalam rangka kerja Laravel

王林
Lepaskan: 2023-07-31 16:46:01
asal
1086 orang telah melayarinya

Cara menggunakan Eloquent ORM untuk operasi pangkalan data dalam rangka kerja Laravel

Pengenalan:
Laravel ialah rangka kerja PHP popular yang menyediakan ciri dan alatan yang kaya untuk memudahkan proses pembangunan. Salah satu ciri yang berkuasa ialah Eloquent ORM, yang memberikan kami cara yang elegan dan ringkas untuk melaksanakan operasi pangkalan data. Artikel ini akan memperkenalkan cara menggunakan Eloquent ORM untuk operasi pangkalan data dalam rangka kerja Laravel dan memberikan beberapa contoh kod praktikal.

  1. Mengkonfigurasi sambungan pangkalan data
    Pertama, sebelum menggunakan Eloquent ORM, kita perlu mengkonfigurasi sambungan pangkalan data dalam Laravel. Buka fail konfigurasi config/database.php, cari tatasusunan connections dan konfigurasikannya mengikut jenis pangkalan data dan bukti kelayakan anda. Contohnya: config/database.php,找到connections数组,根据自己的数据库类型和凭据进行配置。例如:
'connections' => [
    'mysql' => [
        'driver'    => 'mysql',
        'host'      => env('DB_HOST', 'localhost'),
        'database'  => env('DB_DATABASE', 'forge'),
        'username'  => env('DB_USERNAME', 'forge'),
        'password'  => env('DB_PASSWORD', ''),
        'charset'   => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix'    => '',
        'strict'    => true,
        'engine'    => null,
    ],
    // 其他类型的数据库连接配置
],
Salin selepas log masuk
  1. 定义模型
    在Eloquent ORM中,模型代表数据库中的一张表。我们可定义一个模型来与每个表进行交互。定义一个模型需要继承自IlluminateDatabaseEloquentModel类,并指定与之关联的表名。例如,我们有一个用户表users,可以创建一个User模型:
namespace AppModels;

use IlluminateDatabaseEloquentModel;

class User extends Model
{
    protected $table = 'users';
    // 其他模型的属性和方法
}
Salin selepas log masuk
  1. 查询数据
    使用Eloquent ORM,我们可以使用各种方法来查询数据。以下是一些常用的方法和示例:
  • 查询所有数据:

    $users = User::all();
    foreach ($users as $user) {
      echo $user->name;
    }
    Salin selepas log masuk
  • 条件查询:

    $user = User::where('id', 1)->first();
    echo $user->name;
    Salin selepas log masuk
  • 排序和限制查询结果:

    $users = User::orderBy('created_at', 'desc')->take(10)->get();
    foreach ($users as $user) {
      echo $user->name;
    }
    Salin selepas log masuk
  • 使用where条件查询:

    $users = User::where('age', '>', 18)->get();
    foreach ($users as $user) {
      echo $user->name;
    }
    Salin selepas log masuk
  • 使用原生SQL查询:

    $users = User::select(DB::raw('count(*) as user_count'))->groupBy('account_id')->get();
    foreach ($users as $user) {
      echo $user->user_count;
    }
    Salin selepas log masuk
  1. 创建和更新数据
    使用Eloquent ORM,我们可以方便地创建和更新数据库中的记录。以下是一些示例:
  • 创建新记录:

    $user = new User;
    $user->name = 'John Doe';
    $user->email = 'johndoe@example.com';
    $user->save();
    Salin selepas log masuk
  • 更新现有记录:

    $user = User::find(1);
    $user->name = 'Jane Doe';
    $user->save();
    Salin selepas log masuk
  • 使用create方法创建记录:

    $user = User::create([
      'name' => 'John Doe',
      'email' => 'johndoe@example.com',
    ]);
    Salin selepas log masuk
  • 使用update方法更新记录:

    User::where('id', 1)->update(['name' => 'Jane Doe']);
    Salin selepas log masuk
  1. 删除数据
    使用Eloquent ORM,我们可以轻松地删除数据库中的记录。以下是一些示例:
  • 删除单个记录:

    $user = User::find(1);
    $user->delete();
    Salin selepas log masuk
  • 使用destroy方法删除多个记录:

    User::destroy([1, 2, 3]);
    Salin selepas log masuk
  • 使用delete

    User::where('age', '<', 18)->delete();
    Salin selepas log masuk
      Tentukan modelDalam Eloquent ORM, model mewakili jadual dalam pangkalan data. Kita boleh menentukan model untuk berinteraksi dengan setiap jadual. Untuk menentukan model, anda perlu mewarisi daripada kelas IlluminateDatabaseEloquentModel dan nyatakan nama jadual yang dikaitkan dengannya. Sebagai contoh, kami mempunyai jadual pengguna pengguna dan boleh mencipta model Pengguna:
    rrreee

      Data pertanyaan
      Gunakan Eloquent ORM , kita boleh menggunakan pelbagai kaedah untuk menanyakan data. Berikut ialah beberapa kaedah dan contoh yang biasa digunakan:

      Soal semua data:
    • rrreee
    🎜Pertanyaan bersyarat: 🎜rrreee🎜🎜🎜Isih dan hadkan hasil pertanyaan Urrereee Pertanyaan bersyarat: 🎜rrreee🎜🎜🎜Gunakan pertanyaan SQL asli: 🎜rrreee🎜🎜
      🎜Buat dan kemas kini data🎜Menggunakan ORM Eloquent, kami boleh mencipta dan mengemas kini rekod dengan mudah dalam pangkalan data . Berikut ialah beberapa contoh: 🎜
    🎜🎜🎜Buat rekod baharu: 🎜rrreee🎜🎜🎜Kemas kini rekod sedia ada: 🎜rrreee🎜🎜🎜Buat rekod menggunakan kaedah create: 🎜rrreee 🎜🎜🎜 Kemas kini rekod menggunakan kaedah kemas kini: 🎜rrreee🎜🎜
      🎜Padam data🎜Menggunakan Eloquent ORM, kita boleh memadamkan rekod dalam pangkalan data dengan mudah. Berikut adalah beberapa contoh: 🎜
    🎜🎜🎜Padamkan satu rekod: 🎜rrreee🎜🎜🎜Padamkan berbilang rekod menggunakan kaedah musnahkan: 🎜rrreee🎜🎜🎜gunakan delete kod >Kaedah untuk memadam rekod berdasarkan syarat: 🎜rrreee🎜🎜🎜Kesimpulan: 🎜Menggunakan Eloquent ORM, kami boleh melakukan operasi pangkalan data dengan mudah tanpa menulis terlalu banyak pernyataan SQL. Dengan beberapa baris kod ringkas, kami boleh membuat pertanyaan, mencipta, mengemas kini dan memadam rekod dalam pangkalan data. Saya harap artikel ini akan membantu anda menggunakan Eloquent ORM untuk operasi pangkalan data dalam rangka kerja Laravel! 🎜🎜Rujukan: 🎜🎜🎜Dokumentasi rasmi Laravel: https://laravel.com/docs/8.x/eloquent🎜🎜

    Atas ialah kandungan terperinci Cara menggunakan Eloquent ORM untuk operasi pangkalan data dalam rangka kerja Laravel. 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