ThinkPHP のショートカット ステップ D と M の違い
ThinkPHP のショートカット メソッド D と M の違い
簡単に言うと、M メソッドを使用する場合、対応するモデルクラスを定義する必要はありません(定義されていても読み込まれません)。通常、このようなモデルは、システムの基本モデル クラス Model クラスの一部のメソッドのみを呼び出すことができます。 D メソッドを使用してモデルをインスタンス化する場合は、対応するモデル クラス ファイルが必要です。さらに、いくつかのモデルのカスタム メソッドまたは属性を呼び出すことができます。 対応 ファイル内に自動検証や関数などのビジネスロジックがある場合は、D も使用する必要があります。
別の例として、M は、システムに付属のアプリケーションのみを備えた新しくインストールされたオペレーティング システムです 自分でインストールしたアプリケーションはありません (したがって、組み込みの Model によって提供されるプロパティとメソッドのみを呼び出すことができます) D 多くのサードパーティ アプリケーションがインストールされています 使用方法は豊富ですが (モデル クラスで定義されたプロパティとメソッドを呼び出すことができます)、明らかに多くのサードパーティ製アプリケーションをインストールすると、システムのパフォーマンスが低下し、実行が遅くなりますが、機能は明らかに強力です。
?
Dメソッド は、モデル オブジェクトのインスタンスを迅速に 作成し、それらをシングルトン化するために使用されます 、例:
$User = D("ユーザー"); は
と同等です $User = new UserModel();
?
m
インスタンス化パラメータはデータベース のテーブル名です。
d は、
model フォルダーの下に作成したモデル ファイル . をインスタンス化します。
?
D
と M の主な違いは次のとおりです: M
メソッドはモデル クラス ファイルを作成する必要はありません。M メソッドはモデル クラスを読み込まないため、デフォルトでは自動検証は無効です。 によって動的に実装できます。
Dメソッドはモデル クラスを作成する必要があります。次の 2 つのメソッドを使用して、データ テーブル のマッピング オブジェクトを作成できます。 最初のタイプ:
$Test = D('Test')2 番目のタイプ:
$Test = new Model('Test')どちらもデータに対して
選択、挿入、削除、更新操作を実行できますが、最初の方法を使用してモデルをインスタンス化する場合には、データ検証に大きな違いがあります。データチェック機能。 タイトル が入力されていない場合、 「タイトル を入力してください」 が表示されます (これは tp が提供する自動機能です) 検証関数は、対応する モデル) で検証条件を定義する必要もあります。 D メソッドはモデル クラスを自動的に検出でき、モデル クラスが存在しない場合は例外をスローします。同時に、インスタンス化されたモデルは繰り返しインスタンス化されません (単一のケース)。
デフォルトの D
メソッドは、現在のプロジェクト (またはアプリケーション) でのモデルの呼び出しのみをサポートします。 ?
例: $user = new UserModel();
は $user = D('user');
と同等です。 ?
空のモデルがインスタンス化された場合
例: $Demo = new Model();
この場合、 $Demo = M();
と同等になります。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









ファーウェイは、Watch GT 5 および Watch GT 5 Pro スマートウォッチ用のソフトウェア バージョン 5.0.0.100(C00M01) をグローバルに展開しています。これら 2 つのスマートウォッチは最近ヨーロッパで発売され、標準モデルが同社の最も安価なモデルとして登場しました。このハーモニー

『鉄拳』シリーズのディレクターである原田勝弘氏は、かつて真剣にカーネル・サンダースを象徴的な格闘ゲームに登場させようとした。 TheGamerとのインタビューで原田氏は、このアイデアを日本KFCに売り込み、ファストフード界のレジェンドをGとして追加したいと考えていたことを明かした。

テスラは最新の完全自動運転 (監視付き) バージョン 12.5.5 を展開しており、これには、ファウンデーション シリーズのトリム価格に含まれる機能を備えたピックアップが発売されてから 10 か月後に、約束されていたサイバートラック FSD オプションがついに付属します。 F

2024年9月初め、AnkerのZolo 140W充電器がリークされました。これは同社初のディスプレイ付き壁掛け充電器だったため、大きな話題になりました。 YouTube の Xiao Li TV からの新しい開封ビデオでは、この製品を直接見ることができます。

Garmin は、最新のハイエンド スマートウォッチの新しい安定したアップデートのセットで月末を迎えます。要約すると、同社は Enduro 3、Fenix E、および Fenix 8 のバッテリー消耗の多さに対処するためにシステム ソフトウェア 11.64 をリリースしました (Amazon で現在 1,099.99 ドル)。

Xiaomiは間もなくMijiaグラフェンオイルヒーターを中国で発売する予定です。同社は最近、Youpin プラットフォームでホストされるスマート ホーム製品のクラウドファンディング キャンペーンを実施し、成功を収めました。ページによると、デバイスはすでに出荷され始めています

サムスンの待望の折りたたみ式「スペシャルエディション」の発売には、また新たな展開が加わった。ここ数週間、いわゆる Galaxy Z Fold Special Edition に関する噂はかなり静かになりました。代わりに、焦点はGalaxy S25シリーズに移りました。

10 年以上の歴史を持つ Manjaro は、インストールと使用が簡単で、初心者とパワーユーザーの両方に適した最もユーザーフレンドリーな Linux ディストリビューションの 1 つとみなされています。主にオーストリア、ドイツ、フランスで開発されたこの Arch ベースのディストリビューション
