舉例如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <?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(); /* 《程式語言教學誌》的範例程式 檔名:class05.php 功能:示範 PHP 程式 作者:張凱慶 時間:西元 2013 年 2 月 */ ?> |
$zero 為 Demo 中的 static 屬性 (property)
3 | public static $zero = 0; |
do_something() 則為 static 方法 (method) ,這裡用預設的 self 與作用域運算子存取 static 屬性
5 6 7 | 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
沒有留言:
張貼留言