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 ক্লাস থেকে উত্তরাধিকার সূত্রে প্রাপ্ত,
যা ফ্রেমওয়ার্কের কোর-এ অবস্থিত। এটির গভীর অর্থ
খুঁজতে হবে না, বরং শুধু ফ্রেমওয়ার্কের একটি নিয়ম হিসাবে
মেনে নিতে হবে। নিয়মটি হল: আপনি তৈরি করা সমস্ত
কন্ট্রোলার必须 Core\Controller ক্লাস থেকে উত্তরাধিকার সূত্রে প্রাপ্ত হতে হবে,
যাতে সবকিছু সঠিকভাবে কাজ করে।