سلام دوستان خوب هستید ؟ امیدوارم که شاد باشید. امروز میخوام درمورد ثابتها در php  توضیح بدیم ،ثابت، شناسه گر یا نامی است که برای مقدار ساده به کار برده می شود. متغیر ثابت هیچگاه هنگام اجرای اسکریپت یا پردازه نمی تواند تغییر کند. در حالت پیش فرض یک ثابت، به بزرگی و کوچکی حروف حساس است. در حالت عادی {قردادی}، ثابت های شناسه همیشه با حروف بزرگ هستند. اسم ثابت با یک حرف{ {letter یا {underscore} زیرخط شروع می شود، که به دنبال آن شماری حروف، ارقام و زیرخط ها می آیند.  زمانی که شما ثابت را مشخص و تعریف می کنید دیگر به هیچ وجه قابل تغییر نیست.

برای تعریف یک ثابت شما باید گزینه ی {() define function} یا همان عملکرد تعریف  را انتخاب کنید و برای بازیابی ارزش یک ثابت فقط باید اسم آن را دقیقا مشخص کنید. برخلاف متغیرها، شما نیازی به ثابتی با علامت $ ندارید. در صورتی که قصد دارید نام ثابتی را به صورت پویا و هوشمند به دست آورید، می توانید از عملکرد ثابت () برای خواندن ارزش یک ثابت استفاده کنید.

{constant function}

همان طوری که اسم آن نشان می دهد، این تابع ارزش ثابت را بازمی گرداند. این کار در صورتی که شما مایل باشید ارزش ثابت را به دست آورید اما اسم آن را نمی دانید بسیار مفید است. به این معنا که در یک متغیر ذخیره می شود یا با تابع باز می گردد.

مثال های ثابت ()

‎<?php‎

define(“MINSIZE”‎، ‏‎ ۵۰);‎

echo MINSIZE;‎

echo constant(“MINSIZE”); // same thing as the previous line‎

‎?>‎

فقط اطلاعات عددی مانند boolean، integer، float و string در ثابت ها می توانند قرار گیرند.

تفاوت بین ثابت ها و متغیر ها به شرح زیر می باشد.

هیچ نیازی به وارد کردن علامت $ (دلار) پیش از یک ثابت نیست، در حالی که برای متغیر شما باید علامت ‎$‎ را وارد کنید.

ثابت ها را نمی توان با جایگزین های {assignment}، ساده تعریف کرد. فقط می توان آن ها را با define function تعریف کرد.

ثابت ها را می توان هر جایی بدون درنظر گرفتن قواعد گسترده ی متغیرها تعریف و ارزیابی کرد.

و به محض تعریف شدن دیگر به هیچ وجه قابل تغییر یا دوباره تعریف شدن نیست.

اسم های معتبر و نامعتبر ثابت ها

// Valid constant names

define(“ONE”،      “first thing”);

define(“TWO2″،     “second thing”);

define(“THREE_3″،  “third thing”)

// Invalid constant names

define(“2TWO”،     “second thing”);

define(“__THREE__”،  “third value”);

ثابت های جادویی PHP {magic php constants}

PHP شمار زیادی ثابت از پیش تعریف شده برای هر اسکریپتی که اجرا می کند فراهم می سازد.

در کل پنج ثابت جادویی وجود دارد که وابسته به جایی که در آن استفاده می شوند تغییر می کنند. به طور مثال، ارزش __LINE__ به خطی که در اسکریپت استفاده می شود بستگی دارد. این ثابت های مخصوص که نسبت به کوچک و بزرگ بودن حروف بی تفاوت هستند {به عبارت دیگر همان case-insensitive } به شرح زیر است.

تعدادی “magical” PHP در زیر مشاهده می کنید.

اسم

توصیف

_LINE_

شماره ی خط کنونی فایل است.

FILE_ _

مسیر کامل و اسم فایل است. اگر داخل یک include استفاده شود، اسم فایل مشمول شده بازگردانده می شود. به دلیل اینکه ۴٫ ۰٫ ۲ PHP_ LINE_  تقریبا همیشه مسیر مطلقی دارند، در حالی که نسخه های قدیمی تحت برخی شرایط  مسیر نسبی دارند.

_founction_

نام تابع است. (در php4. 0. 2  اضافه شد.) از php5  این ثابت هنگامی که اعلان  می گردد نام تابع را بر می گرداند (case-sensitive). در php4 مقادیر همیشه با حروف کوچک است.

CLASS__

اسم کلاس. (در PHP 4. 0. 3 اضافه می شود) از ۵PHP  به بعد این ثابت، اسم کلاس را همان طوری که معرفی شده باز می گرداند. (case-sensitive) در ۴PHP  مقدار با حروف کوچک نوشته می شود. (lowercased)

Method__

اسم متد کلاس. (در PHP 5. 0. 0 اضافه می شود). نام متد همان گونه که تعریف شده بود بازگردانده می شود.