OOP - ویژگی‌های Static

از ویکی‌کد
پرش به ناوبری پرش به جستجو
Main Page Tutorial
Php-menu.png
موارد آموزشی
فرم‌ها در PHP
PHP پیشرفته
شیء گرایی در PHP
۱OOP چیست؟
۲کلاس‌ها و اشیاء
۳متد سازنده
۴متد نابودگر
۵مشخص کننده‌های دسترسی
۶ارث بری
۷ثابت‌های کلاس
۸کلاس‌های Abstract
۹Traits
۱۰متدهای Static
۱۱ویژگی‌های Static
پایگاه داده MySQL
XML در PHP
AJAX در PHP
مثال‌های PHP
مرجع PHP

ویژگی‌های static را می‌توان به صورت مستقیم فراخوانی کرد - بدون ساختن شیء از یک کلاس. [۱]

ویژگی‌های static با کلمه کلیدی static تعریف می‌شوند:

شیوه نوشتار

1 <?php
2 class ClassName {
3   public static $staticProp = "WikiCod";
4 }
5 ?>

برای دسترسی به یک ویژگی static از نام کلاس، دو (::)، و نام ویژگی استفاده کنید:

شیوه نوشتار

ClassName::staticProp();

بگذارید به یک مثال نگاهی بیندازیم:

مثال

1 <?php
2 class pi {
3   public static $value = 3.14159;
4 }
5 
6 // Get static property
7 echo pi::$value;
8 ?>


مشاهدهٔ نتیجه


توضیح مثال

در اینجا، ما یک ویژگی Static تعریف کرده‌ایم: $value. سپس، ما مقدار ویژگی static را به وسیله نام کلاس، دو (::)، و نام ویژگی (بدون اینکه ابتدا از کلاس شیء بسازیم) را چاپ کرده‌ایم.

PHP - مطالب بیشتری در مورد ویژگی های Static

یک کلاس می‌تواند هم ویژگی‌های Static و هم ویژگی‌های غیر static داشته باشد. یک ویژگی Static را می‌توان از یک متد درون کلاس یکسان با استفاده از کلمه کلیدی self و دو (::)، مورد دسترسی قرار داد.

مثال

 1 <?php
 2 class pi {
 3   public static $value=3.14159;
 4   public function staticValue() {
 5     return self::$value;
 6   }
 7 }
 8 
 9 $pi = new pi();
10 echo $pi->staticValue();
11 ?>


مشاهدهٔ نتیجه


برای فراخوانی یک ویژگی static از یک کلاس فرزند، از کلمه کلیدی parent درون کلاس فرزند استفاده کنید:

مثال

 1 <?php
 2 class pi {
 3   public static $value=3.14159;
 4 }
 5 
 6 class x extends pi {
 7   public function xStatic() {
 8     return parent::$value;
 9   }
10 }
11 
12 // Get value of static property directly via child class
13 echo x::$value;
14 
15 // or get value of static property via xStatic() method
16 $x = new x();
17 echo $x->xStatic();
18 ?>


مشاهدهٔ نتیجه



منابع آموزشی