PHP で ORM フレームワークを使用するにはどうすればよいですか?
ORM (オブジェクト リレーショナル マッピング) はプログラミング テクノロジであり、その主な機能は、リレーショナル データベースのデータをプログラム内のオブジェクトにマッピングすることです。 ORM フレームワークを使用すると、コードの保守性と可読性が大幅に向上します。 PHPではORMフレームワークを利用することでデータベースをより便利に操作できるため、ORMフレームワークはPHP開発においても非常に重要なツールとなっています。この記事では、PHP で ORM フレームワークを使用する方法を紹介します。
1. ORM フレームワークの概要
ORM フレームワークは、リレーショナル データベースをオブジェクトにマップし、データベースに関連する詳細をカプセル化するツールです。 ORM の中心的な考え方は、オブジェクトをリレーショナル データベースのテーブルにマッピングすることです。つまり、各クラスがテーブルに対応し、データベース操作の詳細を考慮せずにオブジェクトをコード レベルで直接操作できます。
ORM フレームワークを使用すると、次のような多くの利点が得られます。
2. PHP での ORM フレームワークの使用
PHP では、ORM フレームワークを使用すると非常に便利です。一般的に使用される ORM フレームワークには、Doctrine、Yii、Laravel などが含まれます。ここでは、Laravel フレームワークを例として取り上げます。
まず、Laravel フレームワークをローカルにインストールする必要があります。 Laravelではアプリケーションのスケルトンを素早く作成できる「Artisan」というコマンドラインツールが提供されています。次のコマンドを使用して、Laravel フレームワークをインストールします。
composer create-project --prefer-dist laravel/laravel laravel-orm
ここでは、laravel-orm という名前のプロジェクトを作成します。これは、実際のニーズに応じて名前を付けることができます。
ORM フレームワークを使用する前に、データベースを作成し、関連するテーブル構造を確立する必要があります。 phpMyAdmin またはその他のデータベース管理ツールを使用してデータベースを作成できます。以下はテーブル構造の例です。
CREATE TABLE `users` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, `email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL UNIQUE, `password` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
ここでは、id、name、email、password、created_at、updated_at の 5 つのフィールドを含む「users」という名前のテーブルが作成されます。
ORM フレームワークを使用して Laravel でデータベースを操作するのは非常に簡単で、対応するモデルを定義するだけです。モデルは ORM フレームワークにおける重要な概念です。モデルはテーブルを表します。モデルを使用すると、SQL ステートメントを手書きすることなく、テーブル内のデータを直接操作できます。
Laravel では、モデルは通常、app ディレクトリの下の Models サブディレクトリにあります。以下は、User モデルの例のコードです。
<?php namespace AppModels; use IlluminateDatabaseEloquentModel; class User extends Model { protected $table = 'users'; protected $fillable = [ 'name', 'email', 'password' ]; protected $hidden = [ 'password', 'remember_token', ]; }
ここの User モデルは、Laravel の組み込み Model クラスから継承しています。 $table 属性はモデルに対応するテーブル名を定義し、$fillable 属性と $hidden 属性はバッチ割り当ておよび非表示にできるフィールドを定義します。
ORM フレームワークを使用すると、データの追加、削除、変更、クエリを簡単に行うことができます。以下にサンプル コードを示します。
$user = new User(); $user->name = 'John Doe'; $user->email = 'john@example.com'; $user->password = bcrypt('secret'); $user->save();
$user = User::find(1);
$user = User::find(1); $user->name = 'Jane Doe'; $user->save();
$user = User::find(1); $user->delete();
上記の例は、ORM フレームワークの基本的な構文にすぎません。Laravel ORM フレームワークは、多くの高度な構文も提供しますクエリビルダー、関連付けモデルなど。
3. 概要
ORM フレームワークは、PHP 開発者が手書きの SQL ステートメントの作業負荷を軽減し、コードの可読性と保守性を向上させるのに役立ちます。 PHP プロジェクトで ORM フレームワークを使用するのは非常に一般的ですが、Laravel フレームワークには、データベースをより効率的に操作するのに役立つ強力な ORM 機能も用意されています。 ORM フレームワークの使用をマスターすることは、PHP 開発者にとって非常に貴重なスキルです。
以上がPHP で ORM フレームワークを使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。