একটি PHP ভ্যারিয়েবল এমন একটি মান সংরক্ষণ করে যা আপনি পরে ব্যবহার করতে বা বদলাতে পারেন — প্রোগ্রামিং পরিচিতি-তে যে ধারণা আপনি শিখেছেন, তার উপর PHP-এর নিজস্ব সিনট্যাক্স।
প্রতিটি PHP ভ্যারিয়েবলের নাম একটি ডলার সাইন ($) দিয়ে শুরু হয়। এটি কোনো ঐচ্ছিক সাজসজ্জা নয় — এভাবেই PHP একটি ভ্যারিয়েবলকে একটি ফাংশনের নাম, একটি কনস্ট্যান্ট, বা একটি কীওয়ার্ড থেকে আলাদা করে চেনে।
<?php
$name = "Amit";
$age = 21;
echo "$name is $age years old.";
?>লক্ষ্য করুন ভ্যারিয়েবল সরাসরি একটি ডাবল-কোটেড স্ট্রিং-এর ভেতরে রাখা যায় আর PHP তার মান বসিয়ে দেবে — একে বলে স্ট্রিং ইন্টারপোলেশন, আর এটি শুধু ডাবল কোটে কাজ করে, সিঙ্গেল কোটে নয় (আসন্ন একটি পাঠে স্ট্রিং ভালোভাবে দেখবেন)।
| নিয়ম | উদাহরণ |
|---|---|
| একটি অক্ষর বা আন্ডারস্কোর দিয়ে শুরু হতে হবে (কখনো সংখ্যা দিয়ে নয়) | $_id — বৈধ, $1id — অবৈধ |
| এরপর অক্ষর, সংখ্যা, আর আন্ডারস্কোর থাকতে পারে | $user_2 — বৈধ |
| স্পেস বা হাইফেন অনুমোদিত নয় | $user name — অবৈধ |
| কেস-সেনসিটিভ | $Name আর $name আলাদা ভ্যারিয়েবল |
PHP-তে আপনি কখনো একটি ভ্যারিয়েবলের টাইপ আগে থেকে ঘোষণা করেন না — শুরুতে কোনো int, string, বা এরকম কীওয়ার্ড নেই। আপনি যে মান assign করেন তা থেকেই PHP টাইপ বুঝে নেয়, আর পরে আবার assign করলে একই ভ্যারিয়েবল সম্পূর্ণ ভিন্ন একটি টাইপও ধারণ করতে পারে:
<?php
$value = 10; // an integer
$value = "ten"; // now a string — perfectly legal
?>এই নমনীয়তা সুবিধাজনক, কিন্তু এটি সূক্ষ্ম বাগেরও একটি সাধারণ উৎস — পরের পাঠে PHP-এর ডেটা টাইপ ভালোভাবে দেখানো হবে, যার মধ্যে থাকবে PHP কীভাবে একটি মান "আসলে" কী তা সিদ্ধান্ত নেয়, প্রয়োজন হলে।
আলাদা ঘোষণা ধাপ নেই
কিছু ভাষার মতো PHP ভ্যারিয়েবলে ব্যবহারের আগে আলাদা করে ঘোষণা করার দরকার নেই — $whatever-এ প্রথমবার একটি মান assign করাই এটি তৈরি করার জন্য যথেষ্ট। আলাদা কোনো "ঘোষণা" ধাপ নেই।