PHP में MVC के नियंत्रक
पहली चीज जिससे हम निपटेंगे वह हैं नियंत्रक। नियंत्रक उपयोगकर्ता के अनुरोधों को संसाधित करते हैं, समझते हैं कि उपयोगकर्ता साइट से क्या मांग रहा था, मॉडल से संबंधित डेटा मांगते हैं और उन्हें प्रस्तुति (व्यू) में भेजते हैं।
नियंत्रक OOP कक्षाएं (क्लासेज) होती हैं।
एक फाइल - एक कक्षा और, तदनुसार,
एक नियंत्रक। हमारे फ्रेमवर्क में नियंत्रक
फोल्डर project/controllers में संग्रहीत रहेंगे।
आइए नियंत्रक बनाने का अभ्यास करें।
वार्म-अप के लिए हम PageController कक्षा बनाएंगे,
जो हमारी साइट पर टेक्स्ट पेजों को
प्रबंधित करेगी।
आइए तुरंत हमारे नियंत्रक के लिए फाइल बनाएं।
हमारे फ्रेमवर्क के नियमों के अनुसार प्रत्येक कक्षा
को एक ही नाम वाली फाइल में संग्रहीत किया जाना चाहिए
(केस सहित)। यानी हमारी कक्षा PageController
फाइल PageController.php में संग्रहीत रहेगी।
इस फाइल को project/controllers फोल्डर में बनाएं।
आइए इस फाइल में हमारी कक्षा बनाएं:
<?php
namespace Project\Controllers;
use \Core\Controller;
class PageController extends Controller
{
}
?>
जैसा कि आप देख रहे हैं, हमारी कक्षा नेमस्पेस
Project\Controllers से संबंधित है,
फाइलों के ऑटोलोडिंग समझौते के अनुसार
(यानी फोल्डर के अनुसार पथ
नेमस्पेस से मेल खाना चाहिए)।
इसके अलावा, हमारी क्लास क्लास से विरासत में मिली है
Core\Controller, जो फ्रेमवर्क के कोर
में स्थित है। इसमें गहरा अर्थ ढूंढने की आवश्यकता नहीं है,
बल्कि simplemente इसे फ्रेमवर्क के नियम के रूप में स्वीकार करने की आवश्यकता है।
यहाँ यह नियम है: आपके द्वारा बनाई गई सभी नियंत्रक कक्षाओं
को कक्षा Core\Controller से विरासत में मिलनी चाहिए, ताकि सब कुछ
ठीक से काम करे, जैसा कि होना चाहिए।