📜  laravel 插入 - PHP (1)

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

Laravel 插入 - PHP

Laravel 是一款流行的 PHP 框架,它的 Eloquent ORM 提供了多种方法来插入数据到数据库表中。本篇文章将介绍 Laravel 中插入数据的各种方法。

使用 Eloquent ORM 插入数据

在 Laravel 中,Eloquent ORM 是 ORM 最常用的一种。它提供了多种方法来插入数据到数据库表中。假设我们有一个名为 users 的数据表,其中包含了 id、name 和 email 字段,我们可以使用以下方法来插入数据。

插入一条记录
$user = new App\Models\User;
$user->name = 'John Doe';
$user->email = 'john@example.com';
$user->save();

这里,我们首先实例化一个 User 模型对象,然后将 name 和 email 属性设置为相应的值,最后调用 save 方法将数据保存到数据库中。

插入多条记录
$user1 = new App\Models\User;
$user1->name = 'John Doe';
$user1->email = 'john@example.com';

$user2 = new App\Models\User;
$user2->name = 'Jane Doe';
$user2->email = 'jane@example.com';

App\Models\User::insert([$user1->toArray(), $user2->toArray()]);

这里,我们首先实例化了两个 User 模型对象,并为它们设置了 name 和 email 属性。然后,我们可以将这两个模型对象转化为数组,并以数组的形式传递给 insert 方法,将多条数据同时插入到数据库中。

插入一条记录并返回 ID
$id = App\Models\User::create([
    'name' => 'John Doe',
    'email' => 'john@example.com'
])->id;

在这个例子中,我们使用 create 方法插入一条记录,并将插入记录的 ID 存储在 $id 变量中。

插入一条记录并返回整个模型对象
$user = App\Models\User::create([
    'name' => 'John Doe',
    'email' => 'john@example.com'
]);

在这个例子中,我们使用 create 方法插入一条记录,并将整个 User 模型对象存储在 $user 变量中。

使用原生 SQL 插入数据

在某些情况下,您可能需要使用原生 SQL 插入数据。在 Laravel 中,您可以使用 DB 类执行原生 SQL 查询。以下是使用原生 SQL 插入数据的示例。

DB::insert('insert into users (name, email) values (?, ?)', ['John Doe', 'john@example.com']);

在这个例子中,我们使用 insert 方法执行 SQL 查询。我们需要传递两个参数:SQL 查询和一个数组,其中包含了要插入的值。在本例中,我们将 John Doe 和 john@example.com 插入到 users 表中。

结论

本篇文章介绍了 Laravel 中插入数据到数据库的各种方法。通过使用 Eloquent ORM 或原生 SQL,您可以轻松地将数据插入到数据库表中。