PHP 快速導覽 - static 成員

類別 (class) 中的 static 成員 (member) 屬於類別,這是說不需要建立物件 (object) 實體就可使用 static 成員。



舉例如下
<?php
class Demo {
    public static $zero = 0;
    
    public static function do_something() {
        return self::$zero;
    }
}

echo Demo::$zero . "\n";
echo Demo::do_something() . "\n";
$d = new Demo();
echo $d->zero . "\n";
echo $d->do_something();

/* 《程式語言教學誌》的範例程式
    http://pydoing.blogspot.com/
    檔名:class05.php
    功能:示範 PHP 程式 
    作者:張凱慶
    時間:西元 2013 年 2 月 */
?>


$zeroDemo 中的 static 屬性 (property)
public static $zero = 0;


do_something() 則為 static 方法 (method) ,這裡用預設的 self 與作用域運算子存取 static 屬性
public static function do_something() {
    return self::$zero;
}


static 方法由於可直接用類別名稱或物件呼叫,並不能使用屬於物件實體的 $this 變數,或是在其他方法中使用 -> 運算子,這也意味著 static 屬性只能被 static 方法存取。


此例執行結果如下



中英文術語對照
類別class
成員member
物件object
屬性property
方法method


您可以繼續參考
類別與物件


相關目錄
回 PHP 快速導覽
回 PHP 教材
回首頁


參考資料
http://www.php.net/manual/en/language.oop5.static.php

沒有留言: