एमवीसी में नियंत्रक और दृश्यों पर अभ्यास

Задание 1

एक नियंत्रक Product बनाएं, जिसके कंस्ट्रक्टर में निम्नलिखित सरणी सेट की जाएगी:

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

नियंत्रक Product में एक क्रिया show बनाएं, जो एक उत्पाद की जानकारी दिखाएगी। यह क्रिया निम्न प्रकार के पते संभालेगी: /product/:n/, जहां पैरामीटर सरणी में उत्पाद की संख्या होगी। इसे ऐसे बनाएं कि ऐसे पतों पर अनुरोध करने पर var_dump के माध्यम से उस उत्पाद के डेटा प्रदर्शित हों, जिसके लिए एड्रेस बार के माध्यम से अनुरोध किया गया था।

Задание 3

बनाई गई क्रिया में एक दृश्य जोड़ें। इसके लिए निम्नलिखित मार्कअप का उपयोग करें:

html<h1>उत्पाद "product1" श्रेणी "category1" से</h1>
<p>
  मूल्य: 100$, मात्रा: 5
</p>
<p>
  कीमत (मूल्य * मात्रा): 500$
</p>

इस मार्कअप में डेटा पहले उत्पाद से मेल खाता है। इसे ऐसा बनाएं कि दृश्य उस उत्पाद का डेटा दिखाए जिसके लिए एड्रेस बार के माध्यम से अनुरोध किया गया था।

Задание 4

नियंत्रक Product में एक क्रिया all बनाएं, जो सभी उत्पादों की सूची को HTML तालिका के रूप में प्रदर्शित करेगी। यह क्रिया /products/all/ पता संभालेगी।