PHP OOP - الطرق الثابتة
PHP - الأساليب الثابتة
يمكن استدعاء الطرق الثابتة مباشرة - بدون إنشاء مثيل للفئة أولاً.
يتم التصريح عن الطرق الثابتة static
بالكلمة الأساسية:
بناء الجملة
<?php
class ClassName {
public static function staticMethod() {
echo "Hello World!";
}
}
?>
للوصول إلى طريقة ثابتة ، استخدم اسم الفئة والنقطتين المزدوجة (: :) واسم الطريقة:
بناء الجملة
ClassName::staticMethod();
لنلقي نظرة على مثال:
مثال
<?php
class
greeting {
public static function
welcome() {
echo "Hello World!";
}
}
// Call static method
greeting::welcome();
?>
شرح المثال
هنا ، نعلن عن طريقة ثابتة: مرحبًا (). بعد ذلك ، نسمي الطريقة الثابتة باستخدام اسم الفئة ، والنقطتان المزدوجة (: :) ، واسم الطريقة (بدون إنشاء مثيل للفئة أولاً).
PHP - المزيد عن الأساليب الثابتة
يمكن للفصل أن يحتوي على طرق ثابتة وغير ثابتة. يمكن الوصول إلى طريقة ثابتة من طريقة في نفس الفئة باستخدام self
الكلمة الأساسية والنقطتين المزدوجة (: :):
مثال
<?php
class greeting {
public static function welcome() {
echo "Hello World!";
}
public function __construct()
{
self::welcome();
}
}
new
greeting();
?>
يمكن أيضًا استدعاء الطرق الثابتة من طرق في فئات أخرى. للقيام بذلك ، يجب أن تكون الطريقة الثابتة public
:
مثال
<?php
class
greeting {
public static function
welcome() {
echo "Hello World!";
}
}
class
SomeOtherClass {
public function
message() {
greeting::welcome();
}
}
?>
لاستدعاء طريقة ثابتة من فئة فرعية ، استخدم parent
الكلمة الأساسية داخل الفصل الفرعي. هنا ، يمكن أن تكون الطريقة الثابتة public
أو protected
.
مثال
<?php
class domain {
protected static function
getWebsiteName() {
return "W3Schools.com";
}
}
class domainW3 extends domain {
public $websiteName;
public function __construct() {
$this->websiteName =
parent::getWebsiteName();
}
}
$domainW3 = new domainW3;
echo $domainW3 -> websiteName;
?>