⊗ppMVDFmRr 25 of 35 menu

अपने MVC फ्रेमवर्क में रूटर विकसित करना

अब आपको एक रूटर विकसित करना होगा। यह एक ऐसा वर्ग है जो रूट्स की एक सरणी लेगा, अनुरोधित URL लेगा, और यह निर्धारित करेगा कि कौन सा रूट इस URL से मेल खाता है। संबंधित रूट मिलने के बाद, हमारे वर्ग को URL के पैरामीटर्स के अनुरूप भाग प्राप्त करने चाहिए।

हमारा रूटर अपने परिणाम के रूप में Track वर्ग की एक वस्तु लौटाए, जिसमें उस नियंत्रक (कंट्रोलर) का नाम हो, जिसे इस अनुरोध पर कॉल किया जाना चाहिए, क्रिया (एक्शन) का नाम और URL से पैरामीटर्स हों।

मान लें कि हमारे Track वर्ग में केवल पढ़ने के लिए उपलब्ध controller, action और params गुण हैं:

<?php namespace Core; class Track { private $controller; private $action; private $params; public function __construct($controller, $action, $params) { $this->controller = $controller; $this->action = $action; $this->params = $params; } public function __get($property) { return $this->$property; } } ?>

उदाहरण

उदाहरण के लिए, मान लें कि एड्रेस बार में /test/1/2/ टाइप किया गया है। मान लें कि हमारे पास एक रूट है, जो इस पते से मेल खाता है:

<?php new Route('/test/:var1/:var2/', 'test', 'index'); ?>

इसका मतलब है कि नियंत्रक (कंट्रोलर) का नाम test होगा, क्रिया (एक्शन) का नाम - index होगा, और पैरामीटर्स की सरणी निम्नलिखित होगी:

<?php ['var1' => 1, 'var2' => 2] ?>

इस पाठ का लक्ष्य Router वर्ग लिखना है, जो Track वर्ग की एक वस्तु लौटाता है। बाकी चीजें अभी हमारे लिए प्रासंगिक नहीं हैं। आइए इस वर्ग को लिखना शुरू करें।

व्यावहारिक कार्य

मेरे Track वर्ग की कोड की प्रतिलिपि बनाएँ और इसे फाइल में रखें /core/Track.php

हिन्दी
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
हम साइट के कार्य, विश्लेषण और व्यक्तिगतकरण के लिए कुकीज़ का उपयोग करते हैं। डेटा प्रसंस्करण गोपनीयता नीति के अनुसार किया जाता है।
सभी स्वीकार करें कॉन्फ़िगर करें अस्वीकार करें