📜  模型中的 laravel 表 - PHP (1)

📅  最后修改于: 2023-12-03 15:26:50.795000             🧑  作者: Mango

模型中的 Laravel 表

Laravel 是一款优秀的 PHP 框架,它提供了许多有用的功能,其中之一就是 Eloquent ORM(对象关系映射),它可以帮助我们更方便地与数据库进行交互。

在 Laravel 中,我们通常使用模型(Model)来代表数据库中的一个表。模型是一个 PHP 类,它继承自 Illuminate\Database\Eloquent\Model 类,通过模型,我们可以方便地进行数据库操作,如查询、新增、修改、删除等。

在本文中,我们将探讨如何在模型中使用 Laravel 表。

创建模型

在 Laravel 中,我们可以使用 php artisan make:model 命令来生成模型,如下所示:

php artisan make:model User

上述命令会生成一个名为 User 的模型,它的默认表名为 users,这是因为 Laravel 的命名规范要求模型名使用单数形式,而表名使用复数形式。

我们也可以通过 $table 属性来指定表名,如下所示:

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    protected $table = 'my_users';
}

在上述例子中,我们将表名设置为 my_users

查询数据

一旦我们创建了模型并指定了表名,就可以开始在模型中进行数据操作了。以下是在模型中查询数据的示例:

// 获取所有用户
$users = User::all();

// 获取第一条用户记录
$user = User::first();

// 根据主键查找用户
$user = User::find(1);

// 根据条件查询用户
$users = User::where('age', '>', 18)->get();

在上述示例中,我们使用了常见的查询方法:all()first()find()where()。这些方法都返回了 Illuminate\Database\Eloquent\Collection 类型的对象,我们可以通过 foreach 循环来遍历结果集。

新增数据

以下是在模型中新增数据的示例:

// 新增单条记录
$user = new User;
$user->name = 'John';
$user->email = 'john@example.com';
$user->password = bcrypt('password');
$user->save();

// 批量新增记录
$users = [
    ['name' => 'Tom', 'email' => 'tom@example.com', 'password' => bcrypt('password')],
    ['name' => 'Alice', 'email' => 'alice@example.com', 'password' => bcrypt('password')],
];
User::insert($users);

在上述示例中,我们使用了模型实例的 save() 方法和 insert() 方法来新增记录。注意,在使用 insert() 方法时,需要传入一个二维数组,其中每个数组元素都代表一条记录。

修改数据

以下是在模型中修改数据的示例:

// 获取一条记录,并修改姓名和邮箱
$user = User::find(1);
$user->name = 'Mary';
$user->email = 'mary@example.com';
$user->save();

// 根据条件更新记录
User::where('age', '<', 18)->update(['status' => 0]);

在上述示例中,我们使用了模型实例的 save() 方法和 update() 方法来修改记录。注意,在使用 update() 方法时,需要传入一个关联数组,其中键代表要更新的字段,值代表要更新的值。

删除数据

以下是在模型中删除数据的示例:

// 删除一条记录
$user = User::find(1);
$user->delete();

// 根据条件删除记录
User::where('age', '<', 18)->delete();

在上述示例中,我们使用了模型实例的 delete() 方法和 delete() 静态方法来删除记录。

总结

在本文中,我们介绍了如何在模型中使用 Laravel 表。我们讨论了如何创建模型、查询数据、新增数据、修改数据和删除数据。希望这些内容对您有所帮助。