ホームページ > バックエンド開発 > PHPチュートリアル > PHP8.0のORM拡張ライブラリ:Eloquent

PHP8.0のORM拡張ライブラリ:Eloquent

WBOY
リリース: 2023-05-14 12:10:02
オリジナル
1746 人が閲覧しました

データ対話に対する開発者のニーズが高まり続けるにつれて、ORM は現代の開発に不可欠な部分となっています。バックグラウンドでのデータベース操作を非表示にし、CRUD 操作用の簡素化された API を提供できます。これらの ORM ライブラリの中でも、Eloquent は Laravel フレームワークで広く使用されているため、多くの開発者の注目を集めています。 PHP 8.0 では、Eloquent がスタンドアロンの拡張ライブラリとして提供され、プロジェクトで使用できるようになりました。

この記事では、Eloquent の主要な機能のいくつかを検討し、この拡張ライブラリを PHP プロジェクトに統合する方法を紹介します。

Eloquent のインストール

Eloquent をインストールする前に、互換性を確保するために PHP8.0 以降をインストールする必要があります。 Eloquent は、[composer](https://getcomposer.org/) を使用してインストールできます。ターミナルで次のコマンドを実行するだけです:

composer require illuminate/database
ログイン後にコピー

Eloquent Model

Eloquentのデータベースがモデル(Model)です。モデルは ORM の中核概念であり、通常はデータベース テーブルにマップされます。 Eloquent モデルは、作成、更新、削除などの標準操作を実行するための非常に便利な方法を提供します。

Eloquent では、Model クラスには、データベース テーブルと対話するための定義可能なプロパティとメソッドがあります。簡単な例を見てみましょう:

use IlluminateDatabaseEloquentModel;

class User extends Model
{
    protected $fillable = ['name', 'email', 'password'];
}
ログイン後にコピー

この例では、fill 属性 $fillable を含む User モデルを定義します。これにより、バッチ割り当て中にどのプロパティを設定できるかが Eloquent に伝えられます。この場合、$fillable プロパティにリストされているプロパティのみが配列の割り当てを介して設定できます。

データベース接続

データベース接続は次の方法で設定できます:

use IlluminateDatabaseCapsuleManager as DB;

$db = new DB;

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

$db->setAsGlobal();
ログイン後にコピー

addConnection メソッドを通じて、Eloquent はデータベース接続を確立します。アプリケーション。各チャネルに複数の接続を追加し、さまざまなシナリオで異なる接続を使用できます。

setAsGlobal メソッドは、この接続によってインスタンス化されたデータベース接続をグローバル接続にし、後続の操作ではこの接続が優先されます。

新しいレコードの作成

Eloquent を使用して新しいデータ レコードを作成できます。例:

$user = new User;
$user->name = 'John Doe';
$user->email = 'john.doe@example.com';
$user->password = 'secret';
$user->save();
ログイン後にコピー

クエリ レコード

Eloquent を通じてデータをクエリできます。例:

$users = User::all();

$user = User::find(1);

$users = User::where('active', true)
             ->orderBy('name', 'desc')
             ->take(10)
             ->get();
ログイン後にコピー

レコードの更新

Eloquent を使用して既存のレコードを更新できます。例:

$user = User::find(1);
$user->name = 'New Name';
$user->save();
ログイン後にコピー

レコードを変更するときは、save# を使用する必要があります。 ## 方法。特定のフィールドのみを更新したい場合は、update メソッドを使用できます:

User::where('id', 1)
    ->update(['name' => 'New Name']);
ログイン後にコピー

レコードの削除

Eloquent を使用して既存のレコードを削除できます。例:

$user = User::find(1);
$user->delete();
ログイン後にコピー
結論

Eloquent は強力な ORM ライブラリであり、Laravel フレームワークの一部として有名です。ただし、別の拡張ライブラリを使用することで、さらに多くの PHP アプリケーションにメリットをもたらすことができます。この記事の概要を理解すれば、Eloquent についてより深く理解し、独自の PHP 8.0 アプリケーションで Eloquent を使用できるようになります。

以上がPHP8.0のORM拡張ライブラリ:Eloquentの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート