Praksa na kontrolere i predstavljanja u MVC

Задание 1

Napravite kontroler Product, u čijem konstruktoru će biti postavljen sledeći niz:

php<?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',
    ],
  ]
?>
Задание 2

U kontroleru Product napravite akciju show, koja će prikazivati informaciju o jednom proizvodu. Neka ova akcija obrađuje adrese sledećeg oblika: /product/:n/, gde će parametar biti broj proizvoda u nizu. Uredite tako da pristupanje takvim adresama ispisuje pomoću var_dump podatke onog proizvoda koji je zatražen putem adresne linije.

Задание 3

Dodajte kreiranoj akciji predstavljanje. Koristite za ovo sledeću HTML strukturu:

html<h1>Proizvod "product1" iz kategorije "category1"</h1>
<p>
  Cena: 100$, količina: 5
</p>
<p>
  Vrednost (cena * količina): 500$
</p>

Podaci u ovoj strukturi odgovaraju prvom proizvodu. Uredite tako da predstavljanje prikazuje podatke onog proizvoda koji je zatražen putem adresne linije.

Задание 4

U kontroleru Product napravite akciju all, koja će ispisivati spisak svih proizvoda u obliku HTML tabele. Neka ova akcija obrađuje adresu /products/all/.