Yii フレームワークは、MVC アーキテクチャに基づいた高性能 Web アプリケーション開発フレームワークで、強力なデータベース サポートと使いやすい CRUD 操作を備えています。 CRUD 操作とは、データベース内のデータに対する追加、削除、変更 (作成、読み取り、更新、削除) の操作を指します。この記事では、Yii フレームワークでの CRUD 操作と、それを活用してデータベース操作を簡素化する方法について詳しく説明します。
1. モデル
Yii フレームワークでは、モデルはデータベース テーブルに関連付けられたクラスであり、データベース内のデータを操作するために使用できます。 Yii フレームワークでは、Gii ツールを通じてモデルクラスを迅速に生成できます。 Gii は Yii フレームワークに付属するコード ジェネレーターで、コントローラー、モデル、フォーム、ビューなどの基本的なコードを自動的に生成できます。 Gii によって生成されたモデル クラスを通じて、データベース内のデータを直接追加、削除、変更、クエリすることができます。
たとえば、アプリケーションに users という名前のユーザー テーブルがあります。次のコマンドを使用して、対応するモデル クラスを生成できます:
yii gii/model --tableName=users
生成されたモデル クラスは次のとおりです:
namespace appmodels; use Yii; /** * This is the model class for table "users". * * @property int $id * @property string $username * @property string $email * @property string $password_hash * @property int $status * @property string|null $auth_key * @property string|null $access_token */ class Users extends yiidbActiveRecord { /** * {@inheritdoc} */ public static function tableName() { return 'users'; } /** * {@inheritdoc} */ public function rules() { return [ [['username', 'email', 'password_hash'], 'required'], [['status'], 'integer'], [['username', 'email', 'password_hash', 'auth_key', 'access_token'], 'string', 'max' => 255], ]; } /** * {@inheritdoc} */ public function attributeLabels() { return [ 'id' => 'ID', 'username' => 'Username', 'email' => 'Email', 'password_hash' => 'Password Hash', 'status' => 'Status', 'auth_key' => 'Auth Key', 'access_token' => 'Access Token', ]; } }
モデル クラスでは、テーブル名、フィールド ルール、フィールド ラベル、その他の情報を指定できます。 yiidbActiveRecordクラスを継承することでデータベース操作を簡単に行うことができます。
2. クエリ
Yii フレームワークでは、データをクエリするさまざまな方法があります。次の側面からそれを紹介しましょう:
1. すべてのデータをクエリする
$users = Users::find()->all();
モデル クラスの find() メソッドを呼び出すことでクエリ オブジェクトを取得できます。 all() メソッドの呼び出し すべてのクエリ結果。
2. 単一のデータをクエリする
$user = Users::findOne($id);
モデル クラスの findOne() メソッドを呼び出すことで、クエリ結果を取得できます。
3. 条件付きクエリ
$users = Users::find() ->where(['status' => 1]) ->orderBy('id DESC') ->all();
モデル クラスの where() メソッドと orderBy() メソッドを呼び出すことで、クエリ条件と並べ替えルールを指定できます。
3. 新しいデータの追加
Yii フレームワークでは、新しいデータの追加は非常に簡単で、配列を渡すだけです。例:
$user = new Users(); $user->username = 'test'; $user->email = 'test@example.com'; $user->password_hash = '123456'; $user->status = 1; $user->save();
モデル クラスの save() メソッドを呼び出すと、データがデータベースに自動的に保存されます。
4. データの更新
Yii フレームワークでは、データの更新も非常に簡単で、更新したいデータをクエリし、変更して保存するだけです。例:
$user = Users::findOne($id); $user->username = 'newUsername'; $user->save();
モデル クラスの findOne() メソッドを呼び出して更新するデータを取得し、対応するフィールドを変更して、再度 save() メソッドを呼び出してデータを更新できます。
5. データの削除
データの削除はデータの更新と似ており、最初に削除するデータをクエリしてから、delete() メソッドを呼び出す必要もあります。例:
$user = Users::findOne($id); $user->delete();
モデル クラスの delete() メソッドを呼び出すことで、対応するレコードをデータベースから削除できます。
6. 概要
この記事では、Yii フレームワークの CRUD 操作と、それを使用してデータベース操作を簡素化する方法について詳しく紹介しました。 Yii フレームワークが提供するデータのクエリ、追加、更新、削除のメソッドを使用することで、SQL ステートメントの手書きを回避し、開発効率を向上させ、コーディングをよりシンプルかつ明確にすることができます。
以上がYii フレームワークでの CRUD 操作: データベース操作の簡素化の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。