ثابت یا constant در کلاس

تاریخ: 24 فروردین 1400

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

تعریف ثابت یا constant یک کلاس

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

class Foo {
     const RGB = '(255,255,255)';
}

ثابت ها در کلاس با کیورد const تعریف می شوند. در ادامه نام ثابت قرار می گیرد. بهتر است این نام با حروف بزرگ باشد.

 

استفاده از constant در خارج از کلاس

اگر بخواهیم از یک constant در خارج از کلاس استفاده کنیم، باید از شی ساخته شده از کلاس کمک بگیریم.

یعنی ابتدا باید یک شی از کلاسی که constant در آن است ایجاد کنیم و سپس به constant دسترسی پیدا کنیم:

class Foo {
    const VERSION = '2.0';
}
$object = new Foo;
echo $object::VERSION; //output: 2.0

مشاهده می کنید که برای دسترسی به constant باید از double clone (::) استفاده کنیم.

 

استفاده از constant در داخل کلاس

اگر لازم داشته باشیم از یک ثابت در درون متدهای کلاس استفاده کنیم، باید از کیورد self و یک double clone استفاده کنیم:

class Foo {
    const VERSION = '2.0';
    function show_version() {
        return self::VERSION;
    }
}
$object = new Foo;
echo $object->show_version(); //output: 2.0

 

 

 

 

دیدگاهتان را بنویسید