ثابت ها (Constant) در زبان PHP

24 اردیبهشت 1397
درسنامه درس 5 از سری آموزش PHP
php-season-2-4

سلام وقت همگی بخیر. در بخش قبلی به آموزش انواع عملگرها در زبان برنامه نویسی PHP‌ پرداختیم و انواع عملگرهای منطقی، ریاضیاتی، رشته ای و مقایسه ای را با یکدیگر بررسی کردیم. در این بخش قصد داریم شما را با مفاهیمی چون ثابت ها و توابع آشنا کنیم.

ثابت ها (Constant)

رفتار ثابت ها بسیار شبیه به متغییر ها است ولی با این تفاوت که تنها یک مقدار را درون خود ذخیره می کنند و امکان تغییر آن وجود ندارد.

یعنی وقتی شما مثلا نام masoud را درون یک ثابت تعریف می کنید، تحت هیچ شرایطی نمی توانید نام دیگری مانند ali را جایگزین مقدار قبلی کنید. ثابت ها در زبان PHP با استفاده از تابع define تعریف می شوند. در دستور زیر مسیر پوشه روت یا رشته یا درون یک ثابت به نام ROOT_LOCATION تعریف کرده ایم.

define("ROOT_LOCATION", "/usr/local/www/");

سپس می توانید این ثابت را که مقدار مشخصی دارد به یک متغییر نسبت دهید:

$directory = ROOT_LOCATION

توجه به این نکته حائز اهمیت است که در زبان برنامه نویسی PHP معمولا ثابت ها را با حروف بزرگ می نویسند.

ثابت های از پیش تعریف شده در زبان PHP

برخی از ثابت ها در زبان برنامه نویسی PHP‌ از پیش تعریف شده هستند و شما نمی توانید نام آنها را به عنوان یک ثابت انتخاب کنید. این ثابت ها معمولا با دو آندرلاین شروع شده و اتمام پیدا می کنند. در زیر برخی از آنها را شرح می دهیم:

__LINE__ : این ثابت برای نمایش شماره خط کدی که در حال اجراست استفاده می شود. به مثال زیر توجه کنید:

<?php
echo "Line number " . __LINE__ . "<br>"; // Displays: Line number 2
echo "Line number " . __LINE__ . "<br>"; // Displays: Line number 3
echo "Line number " . __LINE__ . "<br>"; // Displays: Line number 4
?>

ــFILE__ : این ثابت نام فایل و مسیر کامل ذخیره شده ی آن را نمایش می دهد. مثلا:

<?php
// Displays the absolute path of this file
echo "The full path of this file is: " . __FILE__;
?>

ــDIR__ : این ثابت مسیر فولدر یا پوشه ای که در آن قرار گرفته است را نمایش می دهد. و مقدار خروجی آن برابر است با:

<?php
// Displays the directory of this file
echo "The directory of this file is: " . __DIR__;
// برابر است با : dirname(__FILE__)
?>

__FUNCTION__ : این ثابت نام تابعی که درون آن قرار دارد را نمایش می دهد:

<?php
function myFunction(){
    echo  "The function name is - " . __FUNCTION__;
}
myFunction(); // Displays: The function name is - myFunction
?>

__CLASS__ : نام کلاسی که درون آن قرار گرفته است را در خروجی نمایش می دهد. (در مورد کلاس ها در فصل های آینده به وفور صحبت می کنیم) به مثال زیر توجه بفرمایید:

<?php
class MyClass
{
    public function getClassName(){
        return __CLASS__;
    }
}
$obj = new MyClass();
echo $obj->getClassName(); // Displays: MyClass
?>

__METHOD__ : این ثابت نام متدی که درون آن قرار دارد را نمایش می دهد. متدها مشابه تابع ها هستند ولی درون کلاس ها استفاده می شوند:

<?php
class Sample
{
    public function myMethod(){
        echo __METHOD__;
    }
}
$obj = new Sample();
$obj->myMethod(); // Displays: Sample::myMethod
?>

__NAMESPACE__ : نام namespace (نام مختصار یک کلاس برای یک مسیر) را که درون آن قرار دارند نمایش می دهد:

<?php
namespace MyNamespace;
class MyClass
{
    public function getNamespace(){
        return __NAMESPACE__;
    }
}
$obj = new MyClass();
echo $obj->getNamespace(); // Displays: MyNamespace
?>

خب دوستان بسیار عالی به شما تبریک می گوییم. در فصل ۲ به مفاهیم کاملا مقدماتی و انواع اصطلاحات رایج زبان برنامه نویسی PHP پرداختیم. در فصل بعدی وارد مفاهیمی چون دستورهای شرطی و کنترلی خواهیم شد و برنامه نویسی را در سطح پیشرفته تری دنبال می کنیم. با ما همراه باشید.

جهت دریافت آموزش ویدیویی صفر تا صد PHP به همراه ساخت CMS مشابه وردپرس روی اینجا یا تصویر زیر کلیک کنید.

تمام فصل‌های سری ترتیبی که روکسو برای مطالعه‌ی دروس سری آموزش PHP توصیه می‌کند:
نویسنده شوید

دیدگاه‌های شما

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.