データ対話に対する開発者のニーズが高まり続けるにつれて、ORM は現代の開発に不可欠な部分となっています。バックグラウンドでのデータベース操作を非表示にし、CRUD 操作用の簡素化された API を提供できます。これらの ORM ライブラリの中でも、Eloquent は Laravel フレームワークで広く使用されているため、多くの開発者の注目を集めています。 PHP 8.0 では、Eloquent がスタンドアロンの拡張ライブラリとして提供され、プロジェクトで使用できるようになりました。
この記事では、Eloquent の主要な機能のいくつかを検討し、この拡張ライブラリを PHP プロジェクトに統合する方法を紹介します。
Eloquent をインストールする前に、互換性を確保するために PHP8.0 以降をインストールする必要があります。 Eloquent は、[composer](https://getcomposer.org/) を使用してインストールできます。ターミナルで次のコマンドを実行するだけです:
composer require illuminate/database
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 サイトの他の関連記事を参照してください。