PHP – Class Constants (ক্লাস কনস্ট্যান্ট)
Class Constants হলো এমন মান যা একটি ক্লাসের জন্য নির্ধারিত এবং তা পরিবর্তনযোগ্য নয়। এটি সাধারণত define() এর পরিবর্তে ব্যবহৃত হয় ক্লাসের মধ্যে।
PHP-তে const কীওয়ার্ড ব্যবহার করে কনস্ট্যান্ট ডিফাইন করা হয় এবং self:: অথবা ClassName:: দিয়ে এক্সেস করা হয়।
উদাহরণ ১: Basic Class Constant
<?php
class MyClass {
const MESSAGE = "এইটি একটি কনস্ট্যান্ট।";
public function showMessage() {
echo self::MESSAGE;
}
}
$obj = new MyClass();
$obj->showMessage(); // Output: এইটি একটি কনস্ট্যান্ট।
?>
✅ এখানে MESSAGE হচ্ছে ক্লাস কনস্ট্যান্ট যা self:: ব্যবহার করে ক্লাসের ভেতরেই অ্যাক্সেস করা হয়েছে।
উদাহরণ ২: ক্লাসের বাইরে থেকে Constant Access
<?php
class AppInfo {
const VERSION = "1.0.0";
}
echo AppInfo::VERSION; // Output: 1.0.0
?>
এখানে AppInfo::VERSION ব্যবহার করে ক্লাসের বাইরে থেকে কনস্ট্যান্ট অ্যাক্সেস করা হয়েছে।
উদাহরণ ৩: Constant Inheritance
কনস্ট্যান্ট গুলো সাব-ক্লাসে Inherit করা যায় এবং চাইলে override করা যায় না (PHP 7.1 এর আগে)।
<?php
class ParentClass {
const ROLE = "Admin";
}
class ChildClass extends ParentClass {
public function showRole() {
echo self::ROLE;
}
}
$obj = new ChildClass();
$obj->showRole(); // Output: Admin
?>
কনস্ট্যান্ট সাব-ক্লাসে Inherit হলেও তা override করা যায় না যদি না আপনি PHP 8.1+ এ final ব্যবহার করেন।
কনস্ট্যান্ট ও ভ্যারিয়েবল পার্থক্য
| পার্থক্য | Constant | Variable |
|---|---|---|
| মান পরিবর্তনযোগ্য? | ❌ | ✔️ |
| অ্যাক্সেস স্টাইল | ClassName::CONSTANT | $object->property |
| মেমোরি ব্যবস্থাপনা | Static | Instance |
উপসংহার
Class Constants ব্যবহার করলে আপনার কোড আরও বেশি সিকিউর এবং মেইনটেইনেবল হয়, কারণ একবার নির্ধারিত মান পরিবর্তন হয় না এবং তা প্রতিটি ইনস্ট্যান্সে একই থাকে।