PHP তে Constant কি? (What is PHP Constant ?)

এই পর্বে আপনি জানতে পারবেন :

PHP তে constant কি?

Constant

constant হচ্ছে Variable এর মতই কোনো একটা সাধারণ স্থায়ী Value বা মানের জন্য Identifier বা নাম, কনস্ট্যান্ট এর সাথে Variable এর মূল পার্থক্য হচ্ছে Constant কে একবার Define করলে আর পরিবর্তন করা যায় না অথবা দ্বিতীয়বার আর declare বা ঘোষণা করা যাবেনা। যেখানে Variable এর মান কে সমস্ত কোড জুড়ে যেকোনো জায়গায় পরিবর্তন করা যায়।

Zend Certified PHP Engineering (ZCPE) Course

PHP তে কিভাবে Constant ঘোষণা করবো?

PHP তে define() function অথবা const keyword দিয়ে constant ঘোষণা করতে হয়। একটি Valid Constant নাম শুরু হয় লেটার(letter) বা (_) Underscore দ্বারা। Constant নামের পূর্বে ডলার($) সাইন দেওয়া যাবেনা। PHP তে Constant এর নাম case sensitive.যেমন PHP এর দৃষ্টিতে, a এবং A দুটি আলাদা কনস্ট্যান্ট। Constant নামে কোনো ফাঁকা (স্পেস) থাকা যাবেনা।যদি নাম একের অধিক হয় তাহলে “_”underscore (first_name) অথবা বড় হাতের অক্ষরে(firstName) লিখতে হবে। চলুন নিচের উদাহরণ থেকে বুঝে নেয়া যাক :

<?php
define("CONSTANT", "Hello world.");
const TEST="Hello Bangladesh";
echo CONSTANT; // outputs "Hello world."
echo TEST;   // outputs "Hello Bangladesh."
echo Constant; // outputs "Constant" and issues a notice.
echo Test; // outputs "Test" and issues a notice.
?>

Zend Certified PHP Engineering (ZCPE) Course

define() function এবং const keyword এর মধ্যে কোনো পার্থক্য আছে ?

PHP তে define function দিয়ে খুব সহজে যেকোনো কনস্ট্যান্ট কে Case-Insensitive করে দিতে পারেন। যা const keyword দিয়ে সম্ভব না, অর্থাৎ :কেও চাইলেও PHP তে কনস্ট্যান্ট এর নামের Letter Case পরিবর্তন করে একই নামে দুটি Constant তৈরী করতে পারবেনা। নিচের উদাহরণ দিয়ে আরেকটু ভালো ভাবে বুঝা যাক।

<?php
define("TEST", "Hello world.",true);
define ("test","Hi World");  // outputs "test" and issues a notice.and show message already defined
echo test; 
?>

এবার নিচের উদাহরণ লক্ষ্য করুন :

<?php
define("TEST", "Hello world.",true);
echo test; // outputs "Hello world."
echo TEST; // outputs "Hello world."
?>

ব্যাখ্যাঃএখানে যদিও আমাদের TEST constant টি Upper-Case কিন্তু আমরা Lower-Case test এ ও একই ফলাফল পাবো।

Note:তবে PHP Version 8.0 থেকে এই সুবিধা পাবেন না।

PHP তে কনস্ট্যান্ট কি local scope? নাকি gobal scope?

সমগ্র কোড জুড়েই Constant স্বয়ংক্রিয়ভাবে Global হয়। চলুন নিচের উদাহরণ থেকে বুঝে নেয়া যাক :

Zend Certified PHP Engineering (ZCPE) Course

<?php
define("TEST", "Hello world.");

function test(){
    echo TEST;
}
test(); // outputs "Hello world."
?>

ব্যাখ্যাঃPHP তে কনস্ট্যান্ট Global Scope হওয়ায় TEST কন্সটেন্টটি Function এর বাহিরে হওয়া সত্ত্বেও , আমরা Function এর ভিতর থেকে call করতে পেরেছি।

আমি মাসুদ আলম, বাংলাদেশের ৩৬ তম Zend Certified Engineer । ২০০৯ সালে কম্পিউটার সাইন্স থেকে বেচেলর ডিগ্রী অর্জন করি। দীর্ঘ ১৫ বছর আমি Winux Soft, SSL Wireless, IBCS-PRIMAX, Max Group, Canadian International Development Agency (CIDA), Care Bangladesh, World Vision, Hellen Keller, Amarbebsha Ltd সহ বিভিন্ন দেশি বিদেশী কোম্পানিতে ডেটা সাইন্স, মেশিন লার্নিং, বিগ ডেটা, ওয়েব ডেভেলপমেন্ট এবং সফটওয়্যার ডেভেলপমেন্ট এর উপর বিভিন্ন লিডিং পজিশন এ চাকরি এবং প্রজেক্ট লিড করি। এছাড়াও বাংলাদেশের ১৮৫ জন জেন্ড সার্টিফাইড ইঞ্জিনিয়ার এর মধ্যে ১২০ এরও অধিক ছাত্র আমার হাতে জেন্ড সার্টিফাইড ইঞ্জিনিয়ার হয়েছেন। বর্তমানে w3programmers ট্রেনিং ইনস্টিটিউট এ PHP এর উপর Professional এবং Advance Zend Certified PHP -8.2 Engineering, Laravel Mastering Course with ReactJS, Python Beginning To Advance with Blockchain, Machine Learning and Data Science, Professional WordPress Plugin Development Beginning to Advance কোর্স করাই। আর অবসর সময়ে w3programmers.com এ ওয়েব টেকনোলজি নিয়ে লেখালেখি করি।

Leave a Reply