📜  拉拉维尔 | MySQL 数据库连接(1)

📅  最后修改于: 2023-12-03 14:54:37.778000             🧑  作者: Mango

拉拉维尔 | MySQL 数据库连接

Laravel 是一个流行的 PHP MVC 框架,支持多种数据库。其中最常用的数据库是 MySQL。Laravel 提供了一个优雅的方式来连接 MySQL 数据库。

配置

在 Laravel 中配置数据库连接非常简单。只需要在 .env 文件中配置数据库连接信息即可。下面是连接 MySQL 的示例:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=mydatabase
DB_USERNAME=myusername
DB_PASSWORD=mypassword

你可以更改这些值来连接你自己的 MySQL 数据库。

连接

Laravel 提供了一个 DB 类来连接 MySQL 数据库。可以使用该类来执行各种操作。

use Illuminate\Support\Facades\DB;

$users = DB::table('users')->get();

foreach ($users as $user) {
    echo $user->name;
}

上面的代码从 users 表获取所有记录,并输出每个用户的名字。该代码使用 Illuminate\Support\Facades\DB 中的 DB 类,然后调用 table 方法来获取表名,最后调用 get 方法来获取所有记录。

你也可以使用查询构建器来构建查询。

$users = DB::table('users')
            ->where('name', 'John')
            ->orWhere('name', 'Jane')
            ->get();

上面的代码从 users 表获取名为 John 或 Jane 的用户记录。查询构建器允许使用流畅的 API 构建查询。

$users = DB::table('users')
            ->select('name', 'email')
            ->distinct()
            ->get();

上面的代码从 users 表获取所有不同的名字和电子邮件地址。查询构建器允许选择列,排序,限制记录数等操作。

模型

Laravel 的模型允许你通过对象关系映射(ORM)来管理数据库记录。模型是一个继承自 Eloquent 类的 PHP 类。

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    //
}

上面的代码定义了一个 User 模型。该模型将自动与 users 表对应。如果表的名称与模型的名称不同,请使用 $table 属性来指定表的名称。

use Illuminate\Database\Eloquent\Model;

class Customer extends Model
{
    protected $table = 'my_customers';
}

上面的代码定义了一个 Customer 模型,并指定了表的名称为 my_customers。

你可以使用模型来查询和操作数据库记录。

$users = User::all();

foreach ($users as $user) {
    echo $user->name;
}

上面的代码从 users 表获取所有记录,并输出每个用户的名字。

$users = User::where('name', 'John')
            ->orWhere('name', 'Jane')
            ->get();

上面的代码从 users 表获取名为 John 或 Jane 的用户记录。

$user = new User;

$user->name = 'John';

$user->email = 'john@example.com';

$user->save();

上面的代码创建一个新的 User 记录,并保存到数据库中。

结论

Laravel 提供了一个优雅的方式来连接 MySQL 数据库。你可以使用 DB 类和查询构建器来执行各种操作。如果你想管理数据库记录,可以使用 Eloquent 模型。