⊗ppMVUFmRPA 9 of 35 menu

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

記述された内容をより実践的な例で見てみましょう。 コントローラーPageControllerがページの配列を 含んでいるものとします(これらのデータはモデルが 提供すべきですが、モデルについてはまだ説明していないため、 データはとりあえずコントローラーに保持させておきます):

<?php namespace Project\Controllers; use Core\Controller; class PageController extends Controller { private $pages; public function __construct() { $this->pages = [ 1 => 'page 1', 2 => 'page 2', 3 => 'page 3', ]; } } ?>

特定の番号(id)を持つページを表示する アクションshowを作成しましょう:

<?php namespace Project\Controllers; use Core\Controller; class PageController extends Controller { private $pages; public function __construct() { $this->pages = [ 1 => 'page 1', 2 => 'page 2', 3 => 'page 3', ]; } public function show() { // ここで特定の番号のページを表示します } } ?>

アドレス/page/1/にアクセスすると最初のページの テキストが表示され、アドレス/page/2/にアクセスすると 2番目のページのテキストが表示されるようにします。 対応するルートを作成しましょう:

<?php use \Core\Route; return [ new Route('/page/:id/', 'page', 'show'), ]; ?>

説明したメソッドshowを実装します:

<?php namespace Project\Controllers; use Core\Controller; class PageController extends Controller { private $pages; public function __construct() { $this->pages = [ 1 => 'page 1', 2 => 'page 2', 3 => 'page 3', ]; } public function show($params) { echo $this->pages[ $params['id'] ]; // 番号でページを表示します } } ?>

次の配列を含むコントローラーUserControllerを 実装してください:

<?php $this->users = [ 1 => ['name'=>'user1', 'age'=>'23', 'salary' => 1000], 2 => ['name'=>'user2', 'age'=>'24', 'salary' => 2000], 3 => ['name'=>'user3', 'age'=>'25', 'salary' => 3000], 4 => ['name'=>'user4', 'age'=>'26', 'salary' => 4000], 5 => ['name'=>'user5', 'age'=>'27', 'salary' => 5000], ]; ?>

コントローラーUserControllerに、 特定のidでユーザーを表示する アクションshowを作成してください。 次の形式のアドレスでアクセス可能にしてください: /user/:id/

コントローラーUserControllerに、 指定されたユーザーの名前または年齢を表示する アクションinfoを作成してください。 このアクションは次の形式のアドレスで アクセス可能にしてください:/user/:id/:key/。 ここでkeyの値は'name''age'、または'salary'とします。

コントローラーUserControllerに、 すべてのユーザーのリストを表示する アクションallを作成してください。 このアクションは次の形式のアドレスで アクセス可能にしてください:/user/all/ (ここにはパラメータはありません)。

コントローラーUserControllerに、 最初のN人のユーザーリストを表示する アクションfirstを作成してください。 このアクションは次の形式のアドレスで アクセス可能にしてください:/user/first/:n/。 パラメータには画面に表示するユーザーの数が入ります。

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