⊗ppMVDFmRrIm 27 of 35 menu

独自MVCフレームワークにおけるルーターの実装

それでは、これまでの呼び出しに従ってクラス Router の ひな形を作成しましょう:

<?php namespace Core; class Router { private $routes; public function getTrack($routes, $uri) { // ここにコードを記述 } } ?>

メソッド getTrack では、どのルートが指定された $uri に対応するかを決定する必要があります。 これにはルートの配列をループで処理する必要があります:

<?php namespace Core; class Router { public function getTrack($routes, $uri) { foreach ($routes as $route) { // $uriと$routeのチェック } } } ?>

もしあるルートがURIと一致する場合、そのURIからルートのパラメータ値を 取得し、クラス Track のオブジェクトを返す必要があります:

<?php namespace Core; class Router { public function getTrack($routes, $uri) { foreach ($routes as $route) { if (ルートとURIの一致確認) { $params = ; // uriからパラメータを取得する必要がある return new Track($route->controller, $route->action, $params); } } return new Track('error', 'notFound'); // どのルートにも一致しない場合 } } ?>

クラス Router のひな形をコピーし、 ファイル /core/Router.php に配置してください。

クラス Track のオブジェクトを返すように、 説明されているクラス Router を実装してください。 もし困難を感じる場合(非常に可能性が高いです)、 MVCの利用を学んだフレームワークのソースコードを参照してください。 その中の Router クラスに、実装に不足している部分と それに対する私のコメントを見つけることができるでしょう。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否