これは少しわかりにくいかもしれませんので、はっきりしない場合は事前にお詫び申し上げます。
私は自分のMVCフレームワークを書いていますが、もう一度行き詰まります。
フレームワークのコントローラークラスを作成中です。基本的にこれはそれがどのように機能するかです:
- 抽象クラスを拡張するクラスcoreControllerをインスタンス化します
- coreControllerは、クエリ文字列を解釈してロードされるコントローラーを設定します
- 変数に格納されているクエリ文字列値
- 他の変数に値が割り当てられました
- 新しいコントローラがロードされます
- 新しいコントローラは、アクションオブジェクトをインスタンス化する必要があるかどうかをチェックします。
- 新しいアクションコントローラーがロードされます
- アクションコントローラは、それが必要な最後のオブジェクトであるかどうかをチェックします。
- アクションコントローラは、スクリプトの残りの部分で参照されるオブジェクトとして返されます。
汎用の$controller->method()を呼び出して、ロードされた最終コントローラーを参照できます。
別の概要:
coreController
pageController
pageControllerActionAdd
return as object to start
$controller->something(); //References pageControllerActionAdd
基本的に、私ができるようにしたいのは、次のようなURLを入力できるようにすることです 。http ://www.mywebsite.com/page/modify/
スクリプトにPageModifyControllerを変数としてプルアップさせて、そのメソッドを実行できるようにします。
私がしていることのより良い方法を教えていただければ、どうぞどうぞ。コードを書く必要はありません。アイデアだけが素晴らしいでしょう。私が現在行っている方法は非常に混乱し、デバッグが難しいというだけです。私は複数のネストされたオブジェクトになってしまいますが、その概念は好きではありません。
私は他の多くのソースコードを読んでいて、それも非常に洗練されている可能性があることがわかりました。