illuminate/database

Illuminate 数据库包。

安装量: 39,459,708

依赖项: 8,580

建议者: 119

安全: 5

星标: 2,678

关注者: 115

分支: 596

v11.23.5 2024-09-12 18:04 UTC

This package is auto-updated.

Last update: 2024-09-18 14:30:19 UTC


README

Illuminate 数据库组件是 PHP 的完整数据库工具包,提供可表达式的查询构建器、ActiveRecord 风格的 ORM 和模式构建器。它目前支持 MySQL、Postgres、SQL Server 和 SQLite。它还作为 Laravel PHP 框架的数据库层。

使用说明

首先,创建一个新的 "Capsule" 管理器实例。Capsule 旨在让在 Laravel 框架之外使用库的配置尽可能简单。

use Illuminate\Database\Capsule\Manager as Capsule;

$capsule = new Capsule;

$capsule->addConnection([
    'driver' => 'mysql',
    'host' => 'localhost',
    'database' => 'database',
    'username' => 'root',
    'password' => 'password',
    'charset' => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix' => '',
]);

// Set the event dispatcher used by Eloquent models... (optional)
use Illuminate\Events\Dispatcher;
use Illuminate\Container\Container;
$capsule->setEventDispatcher(new Dispatcher(new Container));

// Make this Capsule instance available globally via static methods... (optional)
$capsule->setAsGlobal();

// Setup the Eloquent ORM... (optional; unless you've used setEventDispatcher())
$capsule->bootEloquent();

composer require "illuminate/events" 当您需要与 Eloquent 使用观察者时需要。

一旦注册了 Capsule 实例,您可以使用它如下

使用查询构建器

$users = Capsule::table('users')->where('votes', '>', 100)->get();

其他核心方法可以像从 DB 门面一样直接从 Capsule 访问

$results = Capsule::select('select * from users where id = ?', [1]);

使用模式构建器

Capsule::schema()->create('users', function ($table) {
    $table->increments('id');
    $table->string('email')->unique();
    $table->timestamps();
});

使用 Eloquent ORM

class User extends Illuminate\Database\Eloquent\Model {}

$users = User::where('votes', '>', 1)->get();

有关使用此库提供的各种数据库功能的进一步文档,请参阅 Laravel 框架文档