ホームページ  >  記事  >  PHPフレームワーク  >  ThinkPHP6 での Laravel の Eloquent ORM の使用

ThinkPHP6 での Laravel の Eloquent ORM の使用

WBOY
WBOYオリジナル
2023-06-20 09:40:431388ブラウズ

ThinkPHP6 は非常に人気のある PHP フレームワークであり、Laravel もまた人気のある PHP フレームワークです。どちらのフレームワークにも独自の機能と利点がありますが、Laravel の Eloquent ORM (オブジェクト リレーショナル マッピング) エンジンは「PHP 界で最高の ORM」として知られています。

ThinkPHP6 を使用するときに Laravel の Eloquent ORM を使用したい場合はどうすればよいですか? ThinkPHP6 で Laravel の Eloquent ORM を使用する方法について詳しく説明します。

Eloquent ORM の概要

Eloquent ORM は、Laravel フレームワークのコア コンポーネントの 1 つで、データベース データを処理するための簡潔かつ強力な方法を提供します。 Eloquent ORM を使用すると、データベース テーブルの行データを対応する PHP オブジェクトにマッピングできるため、面倒な SQL ステートメントを作成することなく効率的なデータ操作を実現できます。

Eloquent ORM の利点は、クエリ、追加、更新、削除の操作を簡単に実行できる一連の強力な操作メソッドを提供していることです。同時に、Eloquent ORM は、データベース移行 (Migration)、リレーションシップ バインディング (Relationships)、およびイーガー ロード (Eager Loading) などの高度な機能もサポートしているため、プロジェクト開発中のデータベース操作エクスペリエンスが向上し、開発効率が向上します。

ThinkPHP6 での Eloquent ORM の使用

ThinkPHP6 自体も ORM 機能を提供しますが、Eloquent ORM はサポートしていません。したがって、ThinkPHP6 フレームワークを使用しながら Eloquent ORM を使用したい場合は、最初にいくつかの基本設定を行う必要があります。

Eloquent ORM のインストール

Eloquent ORM を使用する前に、まずインストールする必要があります。インストールする前に、コンポーザー ツールがインストールされていることを確認し、コマンド ラインで次のコマンドを使用してインストールします。

composer require "illuminate/database"

インストールが完了したら、データベース##を作成する必要があります。プロジェクトのルート ディレクトリ # ディレクトリに移動し、そのディレクトリに config.php ファイルを作成します。 config.php ファイルでは、以下に示すようにデータベース接続情報を構成する必要があります。

<?php

return [
    'default' => 'mysql',
    'connections' => [
        'mysql' => [
            'driver' => 'mysql',
            'host' => 'localhost',
            'database' => 'dbname',
            'username' => 'dbuser',
            'password' => 'dbpass',
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'strict' => true,
            'engine' => null,
        ],
    ],
];

データベース接続情報は ThinkPHP6 を使用するプロセスですでに構成されているため、 ThinkPHP6 と同じデータベース構成項目を

config.php ファイルで直接使用できます。

基本情報の設定

Eloquent ORM をインストールした後、プロジェクトの

database ディレクトリに db.php ファイルを作成し、設定する必要があります。対応する基本情報は次のとおりです。

<?php

use IlluminateDatabaseCapsuleManager as Capsule;

$capsule = new Capsule;

$capsule->addConnection([
    'driver' => 'mysql',
    'host' => config('database.hostname'),
    'database' => config('database.database'),
    'username' => config('database.username'),
    'password' => config('database.password'),
    'charset' => 'utf8mb4',
    'collation' => 'utf8mb4_unicode_ci',
    'prefix' => '',
    'strict' => true,
    'engine' => null,
]);

$capsule->setAsGlobal();
$capsule->bootEloquent();

上記のコードでは、

illuminate/databaseCapsule クラスを参照し、このクラスを使用して設定する必要があります。データベース情報の基礎となります。このうち、addConnection メソッドはデータベース接続情報の追加に使用され、setAsGlobal メソッドと bootEloquent メソッドは Eloquent ORM をグローバル サービス コンテナに登録するために使用され、 Eloquent ORM を開始します。

Eloquent ORM の使用

上記の構成を完了すると、Eloquent ORM を使用してデータベース操作を実行できるようになります。 ThinkPHP6 では、

app() 関数を使用してデータベース接続インスタンスを迅速に取得でき、DB クラスはこのインスタンスをカプセル化します。 Eloquent ORM は、このデータベース接続インスタンスに基づいて二次カプセル化を実行します。

たとえば、Eloquent ORM の

users テーブルのデータをクエリする場合は、次のコードを使用できます。

use IlluminateDatabaseCapsuleManager as Capsule;

// 创建一个 Eloquent ORM 实例
$capsule = new Capsule();

// 查询 users 表的数据
$users = Capsule::table('users')->get();

// 输出查询结果
foreach ($users as $user) {
    echo $user->name;
}

上記のコードでは、

Capsule を使用する クラスは Eloquent ORM インスタンスを作成し、インスタンスを通じて table メソッドを呼び出し、テーブル名を渡して対応するクエリ操作を実行します。さらに、Eloquent ORM が提供する豊富な機能を使用して、制限、並べ替え、グループ化、集計などの操作を実行することもできます。具体的な使用方法については、Eloquent ORM の公式ドキュメントを参照してください。

概要

この記事では、ThinkPHP6 で Laravel の Eloquent ORM を使用する方法について詳しく説明しました。 Eloquent ORM の基本情報の構成と使用例を通じて、読者は Eloquent ORM を使用して ThinkPHP6 でデータベース操作を実行する方法をある程度理解できたと思います。もちろん、Eloquent ORM のさらに多くの機能や機能について詳しく知りたい場合は、公式ドキュメントや関連資料を確認して学ぶことができます。

以上がThinkPHP6 での Laravel の Eloquent ORM の使用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。