MVCにおけるコントローラとビューの実践
コントローラ Product を作成し、そのコンストラクタで以下の配列を設定してください:
<?php
$this->products = [
1 => [
'name' => 'product1',
'price' => 100,
'quantity' => 5,
'category' => 'category1',
],
2 => [
'name' => 'product2',
'price' => 200,
'quantity' => 6,
'category' => 'category2',
],
3 => [
'name' => 'product3',
'price' => 300,
'quantity' => 7,
'category' => 'category2',
],
4 => [
'name' => 'product4',
'price' => 400,
'quantity' => 8,
'category' => 'category3',
],
5 => [
'name' => 'product5',
'price' => 500,
'quantity' => 9,
'category' => 'category3',
],
]
?>
コントローラ Product に、1つの製品情報を表示するアクション show を作成してください。
このアクションは、 /product/:n/ という形式のURLを処理するものとします。ここで、パラメータは配列内の製品番号です。
このようなURLへのアクセスにより、アドレスバー経由でリクエストされた製品のデータが var_dump を通じて表示されるようにしてください。
作成したアクションにビューを追加してください。これには以下のマークアップを使用します:
<h1>カテゴリ「category1」の製品「product1」</h1>
<p>
価格: 100$、数量: 5
</p>
<p>
合計金額 (価格 * 数量): 500$
</p>
このマークアップのデータは最初の製品に対応しています。ビューが、アドレスバー経由でリクエストされた製品のデータを表示するようにしてください。
コントローラ Product に、全ての製品のリストをHTMLテーブル形式で表示するアクション all を作成してください。
このアクションは、URL /products/all/ を処理するものとします。