CodeIgniter-এ autoloading হলো এমন একটি পদ্ধতি যার মাধ্যমে কিছু নির্দিষ্ট libraries, helper functions, এবং models স্বয়ংক্রিয়ভাবে লোড হয়। এটি বারবার লোড করার ঝামেলা থেকে বাঁচায় এবং ডেভেলপমেন্টকে দ্রুততর করে।
Autoload ফাইলের অবস্থান
CodeIgniter-এ autoload কনফিগারেশন ফাইলটি app/Config/Autoload.php ডিরেক্টরিতে থাকে। এই ফাইল ব্যবহার করে আপনি বিভিন্ন রিসোর্স যেমন libraries, helpers, এবং models লোড করতে পারেন।
Autoloading Libraries
ডিফল্ট লাইব্রেরি লোড
CodeIgniter এর কিছু বিল্ট-ইন লাইব্রেরি রয়েছে, যেমন:
- Database
- Session
লাইব্রেরি Autoload কনফিগার করা
app/Config/Autoload.phpফাইলটি খুলুন।$psr4অ্যারে ব্যবহার করে লাইব্রেরি যুক্ত করুন। উদাহরণ:public $psr4 = [ 'App' => APPPATH, 'Config' => APPPATH . 'Config', ];
উদাহরণ: Database লাইব্রেরি লোড
app/Config/Autoload.php ফাইলে $classmap অ্যারেতে ডাটাবেস যুক্ত করুন:
public $classmap = [
'database' => 'system/Database/Database.php',
];
Autoloading Helper Functions
Helper কী?
Helper হলো পুনরায় ব্যবহারযোগ্য ফাংশনের একটি সেট। CodeIgniter-এ বিভিন্ন বিল্ট-ইন হেল্পার রয়েছে, যেমন:
url_helperform_helper
Helper Autoload কনফিগার করা
app/Config/Autoload.phpফাইলটি খুলুন।$helpersঅ্যারেতে হেল্পার যোগ করুন। উদাহরণ:public $helpers = ['url', 'form'];
উদাহরণ: URL হেল্পার লোড করা
public $helpers = ['url'];
এটি লোড করার পর, আপনি base_url() বা site_url() এর মতো ফাংশন সরাসরি ব্যবহার করতে পারবেন।
Autoloading Models
Model কী?
Model হলো CodeIgniter-এর একটি উপাদান, যা ডাটাবেস সম্পর্কিত কার্যক্রম পরিচালনা করে।
Model Autoload কনফিগার করা
app/Config/Autoload.phpফাইলটি খুলুন।$classmapবা$psr4এর মাধ্যমে মডেল যুক্ত করুন।
উদাহরণ: একটি মডেল লোড করা
ধরুন আপনার মডেলের নাম UserModel।
app/Models/UserModel.phpএ মডেলটি তৈরি করুন:<?php namespace App\Models; use CodeIgniter\Model; class UserModel extends Model { protected $table = 'users'; }মডেলটি autoload করুন:
public $psr4 = [ 'App' => APPPATH, ];
সরাসরি কন্ট্রোলারে ব্যবহার
$userModel = new \App\Models\UserModel();
$users = $userModel->findAll();
Autoload এর সুবিধা
- কোডের সরলতা: প্রয়োজনীয় লাইব্রেরি বা হেল্পার বারবার ম্যানুয়ালি লোড করার প্রয়োজন হয় না।
- দ্রুত ডেভেলপমেন্ট: সময় সাশ্রয় হয়।
- রক্ষণাবেক্ষণ সহজ: নির্দিষ্ট ফাইল বা রিসোর্স পরিবর্তন করলে কনফিগারেশন ফাইল থেকে সরাসরি নিয়ন্ত্রণ করা যায়।
CodeIgniter-এ autoloading কনফিগারেশন সঠিকভাবে সেটআপ করলে আপনার অ্যাপ্লিকেশন আরও দ্রুত এবং কার্যকরভাবে কাজ করবে। এটি পুনরাবৃত্ত কোড লেখার প্রয়োজনীয়তা দূর করে এবং ডেভেলপমেন্টে সুবিধা নিয়ে আসে।