php物件導向 07過載

2021-08-20 12:13:04 字數 1072 閱讀 6358

1)動態地「建立」類的屬性和方法。

2)通過魔術方法實現。

3)當呼叫當前環境下未定義或不可見的類的屬性或方法時,過載方法會被呼叫。

__set      賦值

__get 讀取

__isset 判斷是否存在

__unset 銷毀

例子

// 屬性的過載

class person

else

}public function __set($n,$v)

public function __isset($n)

public function __unset($n)

}$p1 = new person();

// 讀取

//echo $p1 -> age,'

';//echo $p1 -> ***,'

';// 設定

//$p1 -> age = 30;

//echo $p1 -> age,'

';// 判斷存在與否

isset($p1 -> age);

// 銷毀

unset($p1 -> age);

__call         呼叫不可訪問的普通方法

__callstatic 呼叫不可訪問的靜態方法

特別注意,__callstatic定義時,要定義成靜態方法。

例子

<?php

class myclass

protected static function fun2()

public function __call($function_name,$args)

public static function __callstatic($function_name,$args)

} // 例項化

$c1 = new myclass();

$c1 -> func([1,2,3]);

$c1 -> func2([1,2,3]);

PHP物件導向1 過載overloading

set get isset unset 四個方法,分別用於賦值,取值,判斷是否賦值,釋放。賦值時,如果屬性不存在,則自動呼叫該方法。private data array function set name,value 取值時,如果屬性不存在,則自動呼叫該方法。private data array f...

PHP學習筆記3 過載

方法過載 使用魔術方法 描述 讀取不可訪問屬性的值時,get 會被呼叫。語法 public mixed get string name 例子 class student 建立學生類物件 obj new student 訪問私有屬性 echo 的年齡是 歲。描述 再給不可訪問屬性賦值時,set 會被呼...

索引器(2)過載

看了 陳廣老師的索引器挺不錯的 學習了class coursescore public string name set public int courseid set public int score set class coursescoreindexer public int this stri...