📜  在 laravel 中返回最后插入的 id - PHP (1)

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

在 Laravel 中返回最后插入的 id - PHP

有时候我们需要在 Laravel 中获取最后插入的 id。在这篇文章中,我们将介绍如何使用 Laravel 来实现这个功能。

使用 save 方法

在使用 save 方法保存数据时,Laravel 会自动为新的记录分配一个 id。我们只需要在保存数据后获取这个 id 即可。以下是示例代码:

$user = new User;
$user->name = 'John';
$user->email = 'john@example.com';
$user->save();
$id = $user->id;

通过 $user->save() 方法保存数据后,我们可以使用 $user->id 获取最后插入的 id。

使用 create 方法

如果你使用 create 方法批量创建记录,Laravel 会返回一个包含新记录 id 的数组。以下是示例代码:

$user = User::create([
  'name' => 'John',
  'email' => 'john@example.com',
]);
$id = $user->id;

在上面的示例中,$user->id 将会是最后插入的 id 值。

使用 insert 方法

如果你使用 insert 方法批量插入数据,由于这种方式不会返回任何对象,你需要使用 DB facade 的 insertGetId 方法显式地获取最后插入的 id。以下是示例代码:

$id = DB::table('users')->insertGetId([
  'name' => 'John',
  'email' => 'john@example.com',
]);

在上面的示例中, $id 变量将会包含最后插入的 id 值。

结论

以上是在 Laravel 中返回最后插入的 id 的三种方法。无论你使用哪种方法,你都能方便地获取新记录的 id。