首頁 >後端開發 >php教程 >php學習之旅:static變數與方法

php學習之旅:static變數與方法

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB原創
2016-07-29 09:12:18906瀏覽

static關鍵字用來修飾屬性、方法,稱這些屬性、方法為靜態屬性靜態方法

static的方法,只能存取static的屬性,不能類別存取非靜態的屬性。不過呼叫非靜態方法不可以使用this關鍵字呼叫非靜態方法,而必須使用self::關鍵字,且被呼叫的非靜態方法中不能有非靜態變數,一般情況靜態方法盡量不要呼叫非靜態方法

static的屬性,在記憶體中只有一份,為所有的實例共用。

可以使用self:: 關鍵字存取目前類別的靜態成員。

靜態方法呼叫靜態變數

<code><span><?php</span><span><span>class</span><span>test</span>{</span><span>public</span><span>static</span><span>$pi</span>=<span>3.14</span>;
        <span><span>function</span><span>display</span><span>()</span>
        {</span><span>return</span><span>self</span>::<span>$pi</span>;
        }   
    }
    <span>$test</span>=<span>new</span> test();
    <span>echo</span><span>'<br/>'</span>.<span>$test</span>->display();
<span>?></span></code>

靜態方法呼叫靜態變數

<code><span><?php</span><span><span>class</span><span>test</span>{</span><span>public</span><span>static</span><span>$pi</span>=<span>3.14</span>;
        <span>static</span><span><span>function</span><span>display_static</span><span>()</span>
        {</span><span>return</span><span>self</span>::<span>$pi</span>;
        }   
    }
    <span>$test</span>=<span>new</span> test();
    <span>echo</span><span>'<br/>'</span>.<span>$test</span>::display_static();
<span>?></span></code>

靜態方法 (實際上相當於將非靜態方法在呼叫過程中轉變為靜態方法

來處理了)

<code><span><?php</span><span><span>class</span><span>test</span>{</span><span>public</span><span>static</span><span>$pi</span>=<span>3.14</span>;
        <span>static</span><span><span>function</span><span>display_static</span><span>()</span>
        {</span><span>return</span><span>self</span>::<span>$pi</span>;
        }   
        <span><span>function</span><span>display</span><span>()</span>
        {</span><span>return</span><span>self</span>::display_static();
        }
    }
    <span>$test</span>=<span>new</span> test();
    <span>echo</span><span>'<br/>'</span>.<span>$test</span>->display();
<span>?></span></code>
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); }); 以上就介紹了php學習之旅:static變數與方法,包含了靜態方法,靜態屬性,靜態變數方面的內容,希望對PHP教學有興趣的朋友有幫助。
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn