この記事では、MVC のコントローラー クラスのチュートリアルについて説明します。前の 2 つのセクションから、プログラムが単一のエントリ ファイルのルート クラスを通じて唯一のモジュール、コントローラー、およびアクションを決定し、それを実行することがわかりました。終わり
コードは次のとおりです | コードをコピー | ||||||||||||||||||||||||
$route->run(); /** * 対応する MCA を実行します * */ プライベート関数実行 () { $filePath = APPLICATION_PATH.'/controller/'.$this->_moudle.'/'.$this->_contoller.'.inc.php'; $isNo = 0; if(file_exists($filePath)) { 「$filePath」を含めます; $controller_tp = $this->_contoller.'コントローラー'; $controller = 新しい $controller_tp;
if (method_exists($controller,$this->_action.'Action')) { $acion_tmp = $this->_action.'アクション'; $controller->$acion_tmp(); }その他} {$isNo = 1; }
}その他} { $isNo = 1; } if ($isNo) { $filePath = APPLICATION_PATH.'/controller/default/index.inc.php'; $this->_moudle = $this->_default['モジュール']; $this->_controller = $this->_default['controller']; $this->_action = $this->_default['action'];
($this->_moudle != $this->_default['module']) && include "$filePath"; $controller = 新しいindexController; $controller->indexAction(); } }
上記の 3 行のコードは、決定されたコントローラーに従って対応するファイルをインクルードし、対応するコントローラーをインスタンス化することを意味します。
対応するアクションに従って、対応するアクションを実行します すべてのコントローラー クラスは共通のコントローラー クラスを統合します。このレッスンでは、パブリック コントローラー クラスを分析します。 /*** フロントエンドのパブリッククラスインターフェイス * 公開部分コードを実装します */
/** * このファイルはインデックス作成のみ可能です。 php には が含まれています */定義("WEB_AUTH") || 死ぬ("NO_AUTH");
/** * メニュー設定ファイルが含まれています */
まずは見てください
これは、すべてのコントローラー クラスのライフサイクルの最後に実行される関数です (詳細については、PHP マジック メソッドを検索してください) このフレームワークは、この時間を使用してテンプレートを解析します。この利点は、コントローラーで関連するデータ処理が完了すると、プログラムの最後にテンプレートを呼び出すのではなく、関連するテンプレート (ビュー) が自動的に実行されることです。毎回
この関数は、プログラムが変数をテンプレートに渡す方法を簡略化します。smarty を例に挙げると、$tpl->assign(‘key’,$value); を実行する必要があります。テンプレートに変数を登録するには、この関数では $this->html_key=$value; だけが必要です (開発環境のプロンプト関数を使用して前に宣言します)。
前の記事:PHP オブジェクト指向の抽象メソッドと抽象クラス __call オブジェクトの複製に関する詳細なチュートリアル_PHP チュートリアル
次の記事:PHP オブジェクト指向の static、const、final キーワードの使用_PHP チュートリアル
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
最新の問題
関連トピック
詳細>
|