Zend फ्रेमवर्क - एक मॉड्यूल बनाना

इस अध्याय में, हम सीखेंगे कि Zend फ्रेमवर्क में MVC आधारित मॉड्यूल कैसे बनाया जाए। आइए हम एक मॉड्यूल बनाते हैं जिसे कहा जाता हैTutorial मॉड्यूल निर्माण प्रक्रिया को समझने के लिए।

  • नाम से एक नया PHP वर्ग बनाएँ Module -myapp / मॉड्यूल / ट्यूटोरियल / src / निर्देशिका के अंदर और configProviderInterface को लागू करें।

  • सेट Tutorial के नाम के रूप में Module कक्षा।

  • एक सार्वजनिक समारोह लिखें getConfig में Module के लिए कॉन्फ़िगरेशन फ़ाइल को कक्षा और वापस करें Tutorial मापांक।

के लिए पूरा कोड Module वर्ग इस प्रकार है -

<?php  
namespace Tutorial; 
use Zend\ModuleManager\Feature\ConfigProviderInterface;
class Module implements ConfigProviderInterface { 
   public function getConfig() {    
      return include __DIR__ . '/../config/module.config.php'; 
   }    
}

कॉन्फ़िगर करें Tutorial में मॉड्यूल composer.json के नीचे autoload निम्नलिखित कोड का उपयोग करके अनुभाग।

"autoload": { 
   "psr-4": { 
      "Application\\": "module/Application/src/", 
      "Tutorial\\": "module/Tutorial/src/" 
   } 
}

संगीतकार का उपयोग करके एप्लिकेशन को अपडेट करें update जैसा कि नीचे दिखाया गया है।

composer update

composer कमांड एप्लिकेशन में आवश्यक परिवर्तन करेगा और कमांड प्रॉम्प्ट में लॉग दिखाएंगे जैसा कि नीचे दिखाया गया है -

Loading composer repositories with package information 
Updating dependencies (including require-dev) 
   - Removing zendframework/zend-component-installer (0.3.0) 
   - Installing zendframework/zend-component-installer (0.3.1) 
   Downloading: 100%           
   
   - Removing zendframework/zend-stdlib (3.0.1) 
   - Installing zendframework/zend-stdlib (3.1.0) 
   Loading from cache  
   
   - Removing zendframework/zend-eventmanager (3.0.1) 
   - Installing zendframework/zend-eventmanager (3.1.0) 
   Downloading: 100%           
   
   - Removing zendframework/zend-view (2.8.0) 
   - Installing zendframework/zend-view (2.8.1) 
   Loading from cache  
   
   - Removing zendframework/zend-servicemanager (3.1.0) 
   - Installing zendframework/zend-servicemanager (3.2.0) 
   Downloading: 100%           
   
   - Removing zendframework/zend-escaper (2.5.1) 
   - Installing zendframework/zend-escaper (2.5.2) 
   Loading from cache  
   
   - Removing zendframework/zend-http (2.5.4) 
   - Installing zendframework/zend-http (2.5.5) 
   Loading from cache  
   
   - Removing zendframework/zend-mvc (3.0.1) 
   - Installing zendframework/zend-mvc (3.0.4) 
   Downloading: 100%          
   
   - Removing phpunit/phpunit (5.7.4) 
   - Installing phpunit/phpunit (5.7.5) 
   Downloading: 100%           

Writing lock file 
Generating autoload files

मॉड्यूल कॉन्फ़िगरेशन फ़ाइल बनाएँ, "मॉड्यूल.config.php" पर /config/ निम्नलिखित कोड के साथ -

<?php  
namespace Tutorial;  
   
use Zend\ServiceManager\Factory\InvokableFactory; 
use Zend\Router\Http\Segment;  
return [ 
   'controllers' => [ 
      'factories' => [Controller\TutorialController::class => InvokableFactory::class,], 
   ],
   'view_manager' => [ 
      'template_path_stack' => ['tutorial' => __DIR__ . '/../view',], 
   ], 
];

कॉन्फ़िगरेशन फ़ाइल के तीन भाग हैं और वे निम्नानुसार हैं -

  • Controller configuration - मॉड्यूल के अंदर उपलब्ध नियंत्रकों को निर्दिष्ट करें।

  • Routing configuration - निर्दिष्ट करें कि मॉड्यूल में नियंत्रकों को URL में कैसे हल किया जाना चाहिए।

  • View configuration - इंजन को देखने से संबंधित कॉन्फ़िगरेशन निर्दिष्ट करें जैसे कि दृश्य का स्थान, आदि।

कॉन्फ़िगर करें Tutorial एप्लिकेशन स्तर कॉन्फ़िगरेशन फ़ाइल में मॉड्यूल - myapp / config / मॉड्यूल.config.php।

return ['Zend\Router', 'Zend\Validator', 'Application', 'Tutorial'];

एप्लिकेशन को निष्पादित करके चलाएं composer serve एप्लिकेशन फ़ोल्डर की जड़ में।

हमने सफलतापूर्वक एक नया मॉड्यूल जोड़ा है, लेकिन हमें अभी भी जोड़ना होगा Controller, Routing तथा Views सफलतापूर्वक चलाने के लिए Tutorial मापांक।