ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用して MVC を実装するための詳細な分析、mvc_PHP を実装するための PHP の簡単な分析チュートリアル
PHP での MVC の使用は、特に一部のオープンソース フレームワークでますます一般的になってきています。ほとんどの状況では MVC で十分ですが、記事数が数百しかない比較的単純な個人ブログなど、場合によっては MVC を使用するのは少し複雑すぎると感じます。記事によると、MVC はほとんどの状況には適していません。MVC を使用する Sina などのポータルでは、大量のファイルが読み込まれるため、速度への影響は許容できません
。中規模以上のアプリケーションを扱う場合、従来の対面式の手続き型開発手法は不十分だと思われ始めます。たとえ要件をすぐに完了できたとしても、要件が変更された後、または事後メンテナンスを実行するときに、早い段階で構築した罠に深く陥ってしまいます。したがって、オブジェクト指向アプローチを使用して MVC パターンを実装すると、プログラムのアーキテクチャを整理するための明確なアイデアが得られます。
MVCとは何ですか?
MVC には多くの定義と説明があります。詳細については Wiki または [2] を参照してください。ここで詳しく説明するつもりはありませんし、その能力もありません。PHP 開発の観点から見ると、MVC は次のように要約できます。
ビュー:
ビューというと、多くの人はテンプレート エンジン (Smarty など) を思い浮かべます。実際には、HTML テンプレートや Javascript ファイルなど、さまざまな出力が含まれます。
モジュール (モデル)
モジュールはプログラムのロジックを表し、エンタープライズ アプリケーションではビジネス ロジック層と呼ばれることがよくあります。一般的に、この層で完了する作業は、元のデータを、設計したデータ構造に従って保存された意味のあるデータ シーケンスに処理し、これらのデータを処理のためにビューに渡すことです。通常、モジュール内でデータ操作に関する処理を行うにはデータ抽象クラスが使用されます。モデルには通常、データベースを処理するために使用される関数が含まれています。
コントローラー
コントローラーは、すべての WEB アプリケーションの最初の停止点であり、$_GET 変数などの受信パラメーターを受け取り、それに応じて応答します。MVC が PHP に適しているかどうかについても多くの議論があります [3]。現在、PHP MVC フレームワークにリストされているものなど、多くの MVC フレームワークが存在します。では、なぜ人々は MVC にこれほど熱心なのか、また設計で MVC を使用する必要があるのはなぜでしょうか。
MVC を使用する理由
MVC は、デスクトップ GUI プログラミングの問題を解決するために初めて使用されました。最も初期の MVC フレームワークは、1999 年に Sun によって提案されたモデル 2 であり、その後 Struts に発展しました。 MVC は人々に深い印象を与えますが、私たちはそれを使用するときに、なぜ MVC を使用するのかについて真剣に考えません。従来のデスクトップ アプリケーションでは、モデルで何かが発生すると、ビュー インターフェイスをアクティブに更新して、バックグラウンドで発生した変更を表示できます。 Web アプリケーションでは、従来の Http リクエスト/レスポンス メソッドに限定されているようで、クライアントを更新させる方法がないようです。この議論は、MVC を WEB アプリケーションの開発に使用できないという意味ではありませんが、ある程度は最適ではないということです。
MVC[1] の使用についてはまだ多くの議論がありますが、MVC を使用して自分のプロジェクトを編成することに慣れているすべての人は、新しいプロジェクト アーキテクチャの選択を求められたときに、MVC を絶対に諦めないと私は信じています。
MVCを実装するにはどうすればよいですか?
以下は、非常に単純な MVC 構造の実装です。データ ソースでも組み込みの固定配列が使用されていますが、実際には、多くの PHP フレームワークのコア実装の考え方はこれに似ていますが、一部のフレームワークではその他のツールが提供されています。開発者にとって便利な PHP フレームワークを自分でも実装したいと考えており、フレームワークの開発から PHP の設計思想や手法をさらに学ぶことができればと考えています。
Controller.php
リーリー
興味があるかもしれない記事: