ভেরিয়েবল ডিক্লারেশন
PHP তে ভেরিয়েবল ডিক্লেয়ার করার সময় ভেরিয়েবলের নামের আগে একটা ডলার সাইন($) ব্যবহার করা হয়।
<?php
$name = "The Learner";
?>
উপরোক্ত কোডে $name হচ্ছে একটি ভেরিয়েবল। আর "The Learner" হচ্ছে উক্ত ভেরিয়েবলের কন্টেন্ট বা ভ্যালু।
PHP তে ভেরিয়েবল ডিক্লেয়ার করার সময় ডাটা টাইপ উল্লেখ করে দেওয়ার দরকার নেই। PHP স্বয়ংক্রিয়ভাবে ভেরিয়েবলের কন্টেক্সট(Context) অনুযায়ী ডাটা টাইপ সেট করে নেয়। ঠিক এ কারনেই PHP কে বলা হয় "Loosely Typed Language". ভেরিয়েবল ডিক্লেয়ার করার আগে টাইপ উল্লেখ না করাই হলো গুড প্র্যাকটিস।
যদি উপরের কোডের কথা বিবেচনা করি তাহলে এখানে ভেরিয়েবলের কোন টাইপ উল্লেখ করে দেওয়া হয়নি। PHP অটোমেটিক্যালি ভেরিয়েবলের টাইপ সেট করে নিবে এক্ষেত্রে $name ভেরিয়েবলের টাইপ হিসেবে string সেট করবে। যেহেতু "The Learner" হচ্ছে স্ট্রিং।
যদি উপরের কোডের কথা বিবেচনা করি তাহলে এখানে ভেরিয়েবলের কোন টাইপ উল্লেখ করে দেওয়া হয়নি। PHP অটোমেটিক্যালি ভেরিয়েবলের টাইপ সেট করে নিবে এক্ষেত্রে $name ভেরিয়েবলের টাইপ হিসেবে string সেট করবে। যেহেতু "The Learner" হচ্ছে স্ট্রিং।
ভেরিয়েবল লেখার কিছু নির্দিষ্ট নিয়ম কানুন আছে। এই নিয়মের বাইরে ভেরিয়েবল ডিক্লেয়ার করলে সেটি কাজ করবে না।
PHP ভেরিয়েবল লেখার নিয়মঃ
- ভেরিয়েবল অবশ্যই ডলার সাইন($) দিয়ে শুরু করতে হবে। যেমনঃ $name
- ভেরিয়েবলের নাম অবশ্যই কোন অক্ষর(Letter) অথবা আন্ডারস্কোর( _ ) দিয়ে শুরু করতে হবে। যেমনঃ $name অথবা $_name
- ভেরিয়েবল নাম নাম্বার দিয়ে শুরু করা যাবে না। যেমনঃ $1name (এটি বৈধ কোন ভেরিয়েবল নয়।, কারন এখানে ভেরিয়েবলের নাম নাম্বার দিয়ে শুরু করা হয়েছে।)
- ভেরিয়েবলের নামের মধ্যে শুধু আলফা-নিউমেরিক ক্যারেকটার থাকতে পারবে। অর্থাৎ ভেরিয়েবলের নাম হিসেবে ( A-Z, 0-9, a-z, _ ) এই ক্যারেকটার গুলো ব্যবহার করা যাবে।
- ভেরিয়েবলের নাম কেস-সেনসিটিভ। অর্থাৎ $name, $Name, $NAME ভেরিয়েবল গুলো সম্পূর্ণ আলাদা আলাদা ভেরিয়েবল।
- PHP তে ভেরিয়েবলের নাম হিসেবে যেকোন সংখ্যক ক্যারেকটার ব্যবহার করা যায়। কোন লিমিটেশন নেই।
- $this হচ্ছে স্পেশাল টাইপ ভেরিয়েবল। ভেরিয়েবলের নাম হিসেবে এটি ব্যবহার করা যায় না।
- PHP তে, PHP রিজার্ভ ওয়ার্ড(Reserve Word) বা কী-ওয়ার্ড(Keyword) ভেরিয়েবলের নাম হিসেবে ব্যবহার করা যায়। যেমন $if এটি ভেরিয়েবলের নাম হিসেবে ব্যবহার করাতে কোন সমস্যা নেই।
Comments
Post a Comment