《laravel配置数据库_laravel 数据库操作》
一、解决方案简述
在Laravel项目中,正确配置数据库是进行数据操作的前提。需要修改配置文件来连接数据库,然后可以利用多种方式对数据库进行操作,如使用查询构建器或者Eloquent ORM等。
二、Laravel配置数据库
1. 修改配置文件
打开项目的config/database.php
文件,在其中找到与所用数据库类型相关的配置项。以MySQL为例:
php
'mysql' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
],
这里很多配置项是从.env
文件中读取的。所以在.env
文件中设置如下内容:
properties
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_database_name
DB_USERNAME=your_username
DB_PASSWORD=your_password
三、Laravel数据库操作
1. 查询构建器操作
这是比较基础的操作方式。例如从users表中获取所有用户信息:
php
$users = DB::table('users')->get();
foreach ($users as $user) {
echo $user->name;
}
如果要插入数据:
php
DB::table('users')->insert(
['email' => 'john@example.com', 'votes' => 0]
);
2. Eloquent ORM操作
创建模型,假设创建User模型,php artisan make:model User
。然后就可以方便地进行操作。
获取所有用户:
php
$users = AppModelsUser::all();
创建新用户:
php
$user = new AppModelsUser;
$user->name = 'John Doe';
$user->email = 'john@example.com';
$user->save();
还可以通过定义关系来进行复杂的数据操作,例如一个用户有多个,可以在User模型中定义:
php
public function articles()
{
return $this->hasMany(Article::class);
}
这样就可以轻松获取用户的了。
除了上述两种常用的方式,Laravel还支持原生SQL查询,但一般不推荐,因为查询构建器和Eloquent ORM提供了更好的可读性和安全性。