📜  laravel:获取插入行的 id (1)

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

Laravel:获取插入行的 id

在 Laravel 中,获取刚刚插入的行的 ID(自增 ID)是一项非常常见的任务。通过使用 Eloquent ORM 可以轻松实现此功能。本文将演示如何在 Laravel 中获取刚刚插入的行的 ID。

使用 save 方法获取插入行的 ID

使用 save 方法插入新数据并获得该行的 ID 是最简单和最直接的方法。示例如下:

$user = new User;

$user->name = 'John Doe';
$user->email = 'johndoe@mail.com';
$user->password = Hash::make('password');

$user->save();

$id = $user->id;

在上面的示例中,我们首先创建一个新的用户数据对象并将其属性设置为要插入的值。使用 save 方法将这个新数据对象保存到数据库中,并通过 $user->id 得到刚刚插入的行的 ID。

使用 insertGetId 方法获取插入行的 ID

使用 insertGetId 方法在 Laravel 中插入新数据并获取插入行的 ID 是另一种可行的方法。示例如下:

$id = DB::table('users')->insertGetId(
    [
        'name' => 'John Doe',
        'email' => 'johndoe@mail.com',
        'password' => Hash::make('password')
    ]
);

在上面的示例中,我们使用 insertGetId 方法将一条新数据插入到 users 表中,并立即获取该行的 ID。

使用 create 方法获取插入行的 ID

使用 create 方法插入新数据并获取插入行的 ID 是另一种可行的方法。示例如下:

$user = User::create([
    'name' => 'John Doe',
    'email' => 'johndoe@mail.com',
    'password' => Hash::make('password')
]);

$id = $user->id;

在上面的示例中,我们使用 create 方法将一条新数据插入到 users 表中,并立即获取该行的 ID。

总结

获取刚刚插入行的 ID 是 Laravel 应用的常见任务之一。使用 save 方法、insertGetId 方法或 create 方法都可以实现这个功能。根据自己的需求和应用场景选择适合自己的方法即可。