ويژگيهاي استاتيك ميتوانند مستقيم مورد استفاده قرار گيرند، بدون ايجاد نمونه اي از كلاس. ويژگي استاتيك با كلمه كليديstaticتعريف ميگردد .
فرمت كلي تعريف ويژگي استاتيك مطابق زير:
<?php class ClassName { public static $staticProp = "W3Schools"; } ?>
براي دسترسي به ويژگي استاتيك درابتدا نام كلاس،بعد دبل كالن"::" وبدنبال نام ويژگي.
فرمت كلي مطابق زير:
مثال ـ به مثال زير توجه كنيد.
<?php class pi { public static $value = 3.14159; } // Get static property echo pi::$value; ?>
تشريح مثال ـ در اين
اسكريپت ويژگي استاتيك$value تعريف شده است .اين تعريف با دسترسيpublic
و در كلاسp1 ميباشد .بدون ايجاد نمونه از كلاس p1 مقدار آن نمايش داده ميشود .دستور نمايش
بصورت
يك كلاس ميتواند داراي ويژگي استاتيك وغير استاتيك باشد .براي دسترسي به ويژگي استاتيك درمتد همين كلاس، ازكلمه كليديself:: استفاده ميشود .
مثال ـ در مثال زير نمونه استفاده ازself در كلاس
<?php class pi { public static $value=3.14159; public function staticValue() { return self::$value; } } $pi = new pi(); echo $pi->staticValue(); ?>
براي استفاده از ويژگي استاتيك كلاس در كلاس اولاد ازكلمه كليديparent:: استفاده ميشود.
مثال ـ در مثال زير نمونه آن وجود دارد.
<?php class pi { public static $value=3.14159; } class x extends pi { public function xStatic() { return parent::$value; } } // Get value of static property directly via child class echo x::$value; // or get value of static property via xStatic() method $x = new x(); echo $x->xStatic(); ?>