基於PHP版本: 5.3.5PHP5.3 以後引入了延遲靜態綁定:static(關鍵字) 類似於 self(的類別(Document) 而不是包含類別(DomainObject) , static 和 self 的區別:點可以用parent找到父類別物件的,現在可以在父類別用static找到目前繼承它的這個子類別物件。 class A
{
public static function echoClass()
{
echo __CLASS__;
}
登入後複製
public function what(){ echo __CLASS__;}
登入後複製
public static function test()
{
<pre name="code" class="php"> $this->what(); //输出B
登入後複製
static::echoClass(); //輸出B self::echoClass(); //輸出A } } class B extends A { public static function echoClass() { echo __CLASS__; } } B::test( );
self是指當前類別的對象,static是指調用的類別的對象,$this也是指this的類別的對象,$this也是指this的類的對象,只是當前的類別的對象,只是呼叫靜態屬性,self可以,而__CLASS__是用於指定類別的名稱,一般用於註冊類別的方法使使用。 class B extends A
{
public static function echoClass($name=1)
{
spl_autoload_register(array(__CLASS__,"echoClass"));
echo __CLASS__;
}
}
登入後複製
版權聲明:本文為博主原創文章,未經博主允許不得轉載。
以上就介紹了php53新特性之延遲靜態綁定,包括了方面的內容,希望對PHP教程有興趣的朋友有幫助。
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31