thinkphpのmメソッドの戻り値は何ですか?

WBOY
リリース: 2022-04-25 10:25:37
オリジナル
2567 人が閲覧しました

thinkphp では、m メソッドの戻り値は Model オブジェクトです。m メソッドは "$m=new Model("user")" の略称として理解でき、呼び出し形式は " M('[基本モデル名:]モデル名','データテーブルプレフィックス','データベース接続情報')"、その機能は基本モデルクラスをインスタンス化することです。

thinkphpのmメソッドの戻り値は何ですか?

この記事の動作環境: Windows 10 システム、ThinkPHP バージョン 5、Dell G3 コンピューター。

thinkphp の m メソッドの戻り値は何ですか

M メソッドは $m=new Model("user") の略称、つまり M( ) は Model オブジェクトを返します

M メソッドは、基本的なモデル クラスのインスタンスを作成するために使用されます。

M メソッドの呼び出し形式:

M('[基础模型名:]模型名','数据表前缀','数据库连接信息')
ログイン後にコピー

具体的な用途は何ですか? M メソッド:

1. 基本モデル (モデル) クラスをインスタンス化します。

モデルが定義されていない場合、次のメソッドを使用して、次のメソッドを使用してモデル クラスをインスタンス化できます。操作:

//实例化User模型
$User = M('User');
//执行其他的数据操作
$User->select();
ログイン後にコピー

This このメソッドは、モデル クラスを定義する必要がなく、プロジェクト間の呼び出しをサポートするため、最も単純かつ効率的です。また、カスタム モデル クラスがないため、関連するビジネス ロジックを作成できず、基本的な CURD 操作のみを完了できるという欠点もあります。

$User = M('User');
ログイン後にコピー

は実際には以下と同等です:

$User = new Model('User');
ログイン後にコピー

は think_user テーブルを操作することを意味します。 M メソッドも D メソッドと同様にシングルトン関数を持ち、複数回呼び出されても繰り返しインスタンス化されません。 M メソッドのモデル名パラメーターは、データ テーブルに変換されるときに自動的に小文字に変換されます。これは、ThinkPHP のデータ テーブルの命名仕様がすべて小文字形式であることを意味します。

2. 他のパブリック モデル クラスをインスタンス化する

インスタンス化する最初の方法は、モデル クラスの定義がないため、追加の論理クラスをカプセル化することが困難であるためです。ただし、ほとんどの場合、一般的なロジックを拡張するだけで十分な場合は、次の方法を試してください。

$User = M('CommonModel:User');
ログイン後にコピー

変更された使用法は実際には次と同等です:

$User = new CommonModel('User');
ログイン後にコピー

システムのモデル クラスは自動的にロードできるため、インスタンス化前にクラス ライブラリを手動でインポートする必要はありません。モデル クラス CommonModel は Model を継承する必要があります。 CommonModel クラスでいくつかの共通の論理メソッドを定義できるため、データ テーブルごとに特定のモデル クラスを定義する必要がなくなります。プロジェクトに既に 100 を超えるデータ テーブルがある場合、そのほとんどは基本的なものです。CURD 操作の場合、一部のモデルのみがデータ テーブルを定義します。カプセル化する必要がある複雑なビジネス ロジックがあるため、最初の方法と 2 番目の方法を組み合わせるのが良い選択です。

推奨学習: 「PHP ビデオ チュートリアル

以上がthinkphpのmメソッドの戻り値は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート