static關鍵字用來修飾屬性、方法,稱這些屬性、方法為
靜態屬性、
靜態方法。
static的方法,只能訪問static的屬性,不能類訪問非靜態屬性。不過調用非靜態方法不可以使用this關鍵字調用非靜態方法,而必須使用self::關鍵字,並且被調用的非靜態方法中不能有非靜態變數,一般情況靜態方法盡量不要調用非靜態方法。
static的屬性,在記憶體中只有一份,為所有的執行個體共用。
可以使用self:: 關鍵字訪問當前類的靜態成員。
非靜態方法調用靜態變數
classtest{publicstatic$pi=3.14; functiondisplay() {returnself::$pi; } } $test=new test(); echo'
'.$test->display();?>
靜態方法調用靜態變數
classtest{publicstatic$pi=3.14; staticfunctiondisplay_static() {returnself::$pi; } } $test=new test(); echo'
'.$test::display_static();?>
非靜態方法調用靜態方法
classtest{publicstatic$pi=3.14; staticfunctiondisplay_static() {returnself::$pi; } functiondisplay() {returnself::display_static(); } } $test=new test(); echo'
'.$test->display();?>
靜態方法調用非靜態方法(實際就相當於將非靜態方法在調用過程中轉變為靜態方法來處理了)
classtest{publicstatic$pi=3.14; staticfunctiondisplay_static() {returnself::display(); } functiondisplay() {returnself::$pi; } } $test=new test(); echo'
'.$test::display_static();?>
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('
').text(i)); }; $numbering.fadeIn(1700); }); });
以上就介紹了php學習之旅:static變數與方法,包括了靜態方法,靜態屬性,靜態變數方面的內容,希望對PHP教程有興趣的朋友有所協助。