Constants

در PHP، ثابت‌ها (Constants) متغیرهایی هستند که مقدارشان بعد از تعریف تغییر نمی‌کند.
برخلاف متغیرها، ثابت‌ها همیشه به‌صورت global در کل اسکریپت قابل استفاده‌اند.

🔹 1. تعریف ثابت با ()define

define("SITE_NAME", "TabzMedia"); echo SITE_NAME; // TabzMedia

📌 ویژگی‌ها:

  • نام ثابت معمولاً با حروف بزرگ نوشته می‌شود.

  • مقدار یک بار تعریف می‌شود و تغییر نمی‌کند.

  • ثابت‌ها به‌صورت global در همه جا در دسترس‌اند.

🔹 2. تعریف ثابت با const

const PI = 3.14; echo PI; // 3.14

📌 تفاوت define و const:

  • const فقط در سطح بالا (نه داخل توابع/بلوک‌ها) قابل استفاده است.

  • define می‌تواند در هر جایی اجرا شود.

🔹 3. ثابت‌های آرایه‌ای

از PHP 5.6 به بعد، ثابت‌ها می‌توانند آرایه باشند:

define("COLORS", ["red", "green", "blue"]); echo COLORS[0]; // red

🔹 4. بررسی وجود یک ثابت → ()defined

define("APP_VERSION", "1.0"); if (defined("APP_VERSION")) { echo "Version: " . APP_VERSION; }

🔹 5. ثابت‌های پیش‌تعریف‌شده در PHP

PHP چندین ثابت آماده دارد:

  • PHP_VERSION → نسخه PHP

  • PHP_OS → سیستم عامل

  • PHP_INT_MAX → بزرگ‌ترین عدد صحیح

  • PHP_INT_MIN → کوچک‌ترین عدد صحیح

  • PHP_FLOAT_MAX → بیشترین مقدار float

echo PHP_VERSION; // مثلاً 8.2.0 echo PHP_OS; // مثلاً WINNT یا Linux

🔹 6. ثابت‌های جادویی (Magic Constants)

این ثابت‌ها بسته به محل استفاده تغییر می‌کنند:

  • __LINE__ → شماره خط جاری

  • __FILE__ → مسیر فایل جاری

  • __DIR__ → پوشه فایل جاری

  • __FUNCTION__ → نام تابع

  • __CLASS__ → نام کلاس

  • __METHOD__ → نام متد

  • __NAMESPACE__ → نام فضای نام

echo __FILE__; // C:\xampp\htdocs\index.php

✅ خلاصه

  • ثابت‌ها مقدارشان تغییر نمی‌کند.

  • تعریف با ()define یا const.

  • امکان تعریف آرایه‌ای از PHP 5.6.

  • بررسی وجود با ()defined.

  • ثابت‌های آماده مثل PHP_VERSION, PHP_OS.

  • ثابت‌های جادویی مثل __FILE__, __LINE__, __DIR__.