ThinkPHP CURD メソッドのフィールド メソッドは、モデルの一貫した操作メソッドの 1 つであり、その主な目的は、返されるフィールドまたは操作されるフィールドを識別することであり、クエリ操作と書き込み操作に使用できます。
1. 問い合わせ用
フィールド メソッドはクエリ操作で最も頻繁に使用されます。
ここでは、フィールド メソッドを使用して、クエリ結果セット内の 3 つのフィールド ID、タイトル、コンテンツの値を指定します。実行される SQL は次と同等です:
もちろん、select メソッドに加えて、find などを含むすべてのクエリ メソッドで field メソッドを使用できます。ここでは例として select のみを使用します。
上記の例は、配列に置き換えることもできます:
最終的に実行されるSQLは上記と同等です。
配列の使用法は複雑すぎるように思えますが、まだ結論を出さないでください。配列を使用する利点は後ほど理解します。
配列モードでの定義では、次のような特定のフィールドのエイリアスを定義できます。
リーリー
リーリー
より複雑なフィールド要件の場合、次のような配列の利点がより明白になります。
リーリー
フィールドメソッドにはこの効果しかありませんか?そう考えると、ThinkPHP のフィールド メソッドを過小評価していることになります。ThinkPHP は、あなたが思っているよりもはるかに詳細を考慮しています。
リーリー
リーリー
リーリー
fied(true) を使用すると、データ テーブルに 100 個のフィールドがある場合でも、データ テーブル 内のすべてのフィールドのリストが明示的に取得されます。
2 番目の要件は、コンテンツ フィールドを除くすべてのフィールド値を取得することです (テキスト フィールドの値は非常にメモリを消費します)。たとえば、次のような
フィールド メソッドの除外関数を使用できます。メソッドは上記の機能を実現できます:
リーリー
2. 書き込みに使用します
field メソッドには、フィールドの正当性検出という非常に重要なセキュリティ機能もあります (注: この機能はバージョン 3.1 以降でのみサポートされます)。 フィールド メソッドは、フォーム送信のフィールドの正当性検出を完了するために create メソッドと組み合わせて使用されます。フォーム送信の処理メソッドで使用する場合:
リーリー