1 10(OOP)魔術方法 型別約束

2021-10-08 10:34:11 字數 859 閱讀 9922

魔術方法

在定義類的時候,可以在類裡面寫上10多個魔術方法,這些方法有特殊的作用

php將以 __開頭的類方法保留為魔術方法,所以在自定義類方法時建議不要以 __為字首

每個魔術方法在類中有特殊的作用:

1. __construct()

2. __destruct()

3. __set()

public void __set(string $name, mixed $value)

在給不可訪問屬性賦值時,__set() 會被呼叫

必須宣告為public

4. __get()

public mixed __get(string $name)

讀取不可訪問屬性的值時,__get()會被呼叫

必須宣告為public

5.  __isset()

public bool __isset(string $name)

當對不可訪問屬性呼叫isset()或empty()時,__isset()會被呼叫

必須宣告為public

6. __unset()

public void __unset(string $name)

當對不可訪問屬性呼叫 unset()時,__unset() 會被呼叫

必須被宣告為public

7. __call()

public mixed __call(string $name, array $arguments)

在物件中呼叫乙個不可訪問方法時,__call()會被呼叫

$name引數是呼叫的方法名稱

$arguments引數是乙個列舉陣列,包含著要傳遞給方法 $name 的引數

PHP中的物件導向OOP中的魔術方法

一 什麼是魔術方法 php為我們提供了一系列用 開頭的函式,這些函式無需自己手動呼叫,會在合適的時機自動呼叫,這類函式稱為魔術函式。例如 function construct 在new乙個新物件時自動呼叫此函式 二 php中都有那些魔術方法,以及它們的作用 1.construct 建構函式,new物...

Python類內部的魔術方法

1.repr 和 str 方法 repr 和 str 方法用來響應repr 函式和str 函式。repr 函式返回字串在 中的樣子,在輸出時不會對轉義字元進行轉義,而str 返回使用者看到的樣子。你可以執行上述 看一下這兩者的區別。print repr hello nworld print str ...

php類中的魔術方法

1 建構函式 析構函式 class pt function pr data function dm data function ec data static public function test1 test function destruct 1 pt new pt test echo test...