নিজস্ব MVC ফ্রেমওয়ার্কে রাউট নিয়ে কাজ

আপনি ইতিমধ্যেই জানেন যে /project/config/routes.php ফাইলে রাউটগুলি স্থাপন করা হয়, যা URL এবং কন্ট্রোলার ও অ্যাকশনের মধ্যে মিল নির্দেশ করে। রাউটগুলি Route ক্লাসের অবজেক্ট হিসাবে উপস্থাপিত হয়। আসুন /core/Route.php ফাইলে এই ক্লাসটি তৈরি করি:

/core/Route.php<?php
  namespace Core;
  
  class Route
  {
    private $path;
    private $controller;
    private $action;
    
    public function __construct($path, $controller, $action)
    {
      $this->path = $path;
      $this->controller = $controller;
      $this->action = $action;
    }
    
    public function __get($property)
    {
      return $this->$property;
    }
  }
?>

আপনি দেখতে পাচ্ছেন, এই ক্লাসে বৈশিষ্ট্যগুলি শুধুমাত্র পাঠের জন্য উদ্দেশ্যে, যা ম্যাজিক ব্যবহার করে অর্জন করা হয়।

এখন রাউট সহ ফাইলটি দেখুন। আপনি দেখতে পারেন যে সেখানে একটি অ্যারে রয়েছে যা return এর মাধ্যমে ফেরত দেওয়া হয়। এর মানে, যদি require এর মাধ্যমে এমন একটি ফাইল অন্তর্ভুক্ত করা হয়, তবে সংযোগের ফলাফল একটি ভেরিয়েবলে লেখা যেতে পারে এবং এই ভেরিয়েবলে আমাদের অ্যারে থাকবে:

index.php<?php
  namespace Core;
  
  error_reporting(E_ALL);
  ini_set('display_errors', 'on');
  
  spl_autoload_register(function($class) {
    // আপনার অটোলোড বাস্তবায়ন
  });
  
  // রাউট ফাইল থেকে অ্যারে পড়ুন এবং একটি ভেরিয়েবলে রাখুন:
  $routes = require $_SERVER['DOCUMENT_ROOT'] . '/project/config/routes.php';
?>
Задание 1

আমার Route ক্লাসের কোড কপি করুন এবং এটিকে /core/Route.php ফাইলে রাখুন।

Задание 2

index.php ফাইলে রাউট সহ অ্যারে পান।