CakePHP は、プログラミングの動的な動作を提供するオープンソース フレームワークです。さらに、CakePHP は包含可能な動作を提供します。これにより、操作をフィルタリングし、モデルを制限することができます。言い換えれば、要件に従って、データベースを 2 つのモードの損耗に分割できると言えます。さらに、CakePHP を実装すると、アプリケーション全体のパフォーマンスが向上します。さらに、CakePHP コンテナを使用することで、ソフトウェアの実装中に合理化とバインディングを実装し、アプリケーションのパフォーマンスの向上に役立ちます。
無料ソフトウェア開発コースを始めましょう
Web 開発、プログラミング言語、ソフトウェア テスト、その他
ContainableBehavior。この模範的な行為により、モデルの追跡タスクをチャネル化して制限することができます。 Containable を使用すると、データ セットの不必要な使用量の削減、高速化、およびアプリケーションの一般的な実行に役立ちます。さらに、このクラスは、クライアントに情報を完璧かつ予測どおりに検索して伝達するのに役立ちます。
Containable を使用すると、モデル タイの手順をスムーズにし、改善することができます。これは、モデルの関係を一時的または永久に変更することで機能します。これは、提供されたコントロールを利用して、bindModel 呼び出しと unbindModel 呼び出しの進行を生成することによって行われます。ただし、Containable は既存の接続を変更するため、遠く離れた所属によって結果を限定することはできません。むしろ、テーブルの結合について言及する必要があります。
CakePHP で contains メソッドを使用する方法を見てみましょう。
CakePHP 3.0 の重要な問い合わせは、CakePHP 2.0 で使用されるものと同じではありません。 3.0では、情報ベース管理関連タスクに利用されるORM(オブジェクト・ソーシャル・プランニング)が変更されました。たとえば、「Emp」がモデルで、問い合わせメーカーを利用してフィールドの一部を取得する必要がある場合、質問は次のようになります。
$results=$emp->find() where(['id >'=>1]) toArray();
説明
上記のクエリを使用すると、ID が 1 以上であるすべてのレコードが検索されます。次のスクリーンショットを使用して、上記の実装の最終結果を示します。
次に、次の別の例を見てみましょう。
このモデルを使ってみてはどうでしょうか?たとえば、「Dept」と「Emp」という 2 つのテーブルがあり、多数の接続があります。 Emp に関連する Dept データを取り込みたい場合は、その時点で CakePHP の「contain」テクニックを使用する可能性があります。フォーム 3.0 では、関連モデルを完全に制御できます。お問い合わせはこちら:
$results=$emp->find() contain(['Emp', Dept]) where(['id >'=>1]) toArray();
説明
上記の例では、次のように contains メソッドを実装しようとしています。ここでは、2 つの異なる値を結合し、結果を 1 つのテーブルにまとめます。上記の実装は、次のスクリーンショットを使用して説明しました。
このようにして、contain メソッドを実装できるほか、昇順、降順などの要件に応じてメソッドを追加したり、別のテーブルに関連付けられているレコードをフィルタリングする必要がある場合もあります。今度は、contain メソッドも使用できるようになります。
次に、次のように CakePHP で find ステートメントを使用する方法を見てみましょう。
前に述べたように、モデル層の仕事の 1 つは、さまざまな能力から情報を取得することです。 CakePHP Model クラスには、この情報の検索、並べ替え、ページネーション、チャネリングを支援するいくつかの機能が付属しています。モデルで使用する最も広く認識されている作業は、model:find()
です。構文
find (string $specified type = 'specified type', array $params = array())
説明
上記の構文を使用すると、find ステートメントを実装できます。 Find は、すべてのモデルの情報回復能力を備えた多機能の主力製品です。 $type には、「all」、「first」、「count」、「list」、「neighbors」、または「strung」、または特徴付けることができる任意のカスタム ロケーターを指定できます。 $type は大文字と小文字が区別されることに注意してください。大文字 (たとえば all) を使用すると、期待される結果が得られません。
$params は、さまざまな種類の find() にすべての境界を渡すために使用され、付随する考えられるキーを持ちます (もちろん、これらはすべて任意です)。
次に、次のようなさまざまな検索メソッドを見てみましょう。
Find(first)
最初の結果を出力する必要がある場合、またはその時点でその 1 つの結果を言う必要がある場合は、このメソッドを使用できます。
構文
find('first', $All parameter)
説明
上記の構文では、最初に find メソッドを使用します。また、すべてのパラメータを渡す必要があります。
例
$result = $this -> Emp-> find('first');
Explanation
After executing the above statement, it returns the single record from the Emp table; the implementation of the above statement is illustrated by using the following screenshot.
find(count)
It is used to return the integer value as per our requirement.
Syntax
find('count', $All parameter)
Explanation
In the above syntax, we use the find method with the count method, and also here, we need to pass all parameters.
Example
$result = $this -> Emp-> find('count');
Explanation
We illustrated the final result of the above statement using the following screenshot.
find('all')
It is used to return a variety of different possible outcomes. Indeed, it is the component utilized by all find ( ) variations and paginates.
Syntax
find ('all', $All parameter) find('list')
It is used to return an ordered cluster, helpful for any spot where you would need a rundown, for example, for populating input select boxes.
Syntax
find ('list', $All parameter) find('threaded')
It is used to return a settled cluster and is fitting to utilize the parent_id field of your model information to fabricate settled outcomes.
Syntax
find ('threaded', $All parameter)
So in this way, we can implement the find statement as per our requirement; we can also write the above statement inside the function, depending on the requirement.
We hope from this article you learn more about CakePHP contain. From the above article, we have taken in the essential idea of the CakePHP contain, and we also see the representation and example of the CakePHP contain. Furthermore, we learned how and when we use the CakePHP contained in this article.
以上がCakePHP を含むの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。