您好,登錄后才能下訂單哦!
這篇文章主要為大家詳細介紹了PHP中static和self有哪些區別,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
使用 self:: 或者 __CLASS__對當前類的靜態引用,取決于定義當前方法所在的類:
使用 static:: 不再被解析為定義當前方法所在的類,而是在實際運行時計算的。也可以稱之為“靜態綁定”,因為它可以用于(但不限于)靜態方法的調用。
靜態綁定是PHP 5.3.0,增加的一個功能 用于在繼承范圍內引用靜態調用的類
簡單通俗的來說,
self就是寫在哪個類里面, 實際調用的就是這個類.
static代表使用的這個類, 就是你在父類里寫的static,然后被子類覆蓋,使用的就是子類的方法或屬性
<?php class Person { public static function name() { echo "111"; echo "<br />"; } public static function callself() { self::name(); } public static function callstatic() { static::name(); } } class Man extends Person { public static function name() { echo "222"; echo "<br />"; } } Man::callself(); // output: 111 Man::callstatic(); // output: 222 ?>
關于PHP中static和self有哪些區別就分享到這里了,當然并不止以上和大家分析的辦法,不過小編可以保證其準確性是絕對沒問題的。希望以上內容可以對大家有一定的參考價值,可以學以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。