PHP - بیشتر در مورد روش های استاتیک(PHP - More on Static Methods)
یک کلاس میتواند هم متدهای ثابت و هم غیراستاتیک داشته باشد. یک روش استاتیک می تواند باشد از روشی در همان کلاس با استفاده از self قابل دسترسی است. کلمه کلیدی و دو نقطه (::):
مثال
<?php class greeting { public static function welcome() {
echo "Hello World!"; }
public function __construct() { self::welcome(); } }
new greeting(); ?>
متدهای استاتیک را می توان از متدهای کلاس های دیگر نیز فراخوانی کرد. برای انجام این، روش استاتیک باید عمومی باشد:
مثال
<?php class greeting { public static function welcome() { echo "Hello World!"; } }
class SomeOtherClass { public function message() {
greeting::welcome(); } } ?>
برای فراخوانی یک متد استاتیک از یک کلاس فرزند، از والد استفاده کنید کلمه کلیدی در کلاس کودک در اینجا، روش استاتیک می تواند عمومی باشد یا محافظت شده.
مثال
<?php class domain { protected static function getWebsiteName() { return "W3Schools.com"; }
}
class domainW3 extends domain { public $websiteName;
public function __construct() { $this->websiteName = parent::getWebsiteName(); } }