⊗ppMVUFmRP 8 of 35 menu

PHPのMVCにおけるルートのパラメーター

前のレッスンでは、私たちのルートは固定された アドレスを持っていました。実際には、ルーティングのメカニズムはより 複雑で、URIの一部が名前付きパラメーターとして コントローラーで後から利用できるようにすることができます。

例えば、私たちのアドレスが次のように 見えるとしましょう:/test/param1/param2/、 ここでparam1param2は任意の 文字列です。この場合、この形式のアドレスが 一つのコントローラーアクションによって処理されるようにしたいです。 そのためには、パラメーター名を考え、 その前にコロンを置きます。このように:

<?php use \Core\Route; return [ new Route('/test/:var1/:var2/', 'page', 'act'), ]; ?>

私たちのケースでは、すべての /test/パラメーター1/パラメーター2/という形式のリクエストは アクションactに渡されます。その際、 このアクションの最初のパラメーターには パラメーターを含む連想配列が渡されます: 最初のパラメーターの位置にあるテキストは、 キー'var1'を持つ配列要素に入り、 2番目のパラメーターのテキストは'var2'に入ります。

例えば、アドレスバーに次のように入力されたとします: /test/eee/bbb/。アクションの最初のパラメーターに 何が含まれるか見てみましょう:

<?php namespace Project\Controllers; use Core\Controller; class PageController extends Controller { public function act($params) { var_dump($params); // ['var1' => 'eee', 'var2' => 'bbb'] } } ?>

NumControllerコントローラーを作成し、 その中にアクションsumを作成してください。 このアクションが次の形式のアドレスを処理するようにします: /nums/:n1/:n2/:n3/、ここでパラメーターは 何らかの数字です。渡された数字の合計が 画面に表示されるようにしてください。

日本語
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
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否