構造函數構造函數是類中的一個特殊函數,當使用 new 動作符建立一個類的案例時,構造函數將會自動呼叫。當函數與類同名時,這個函數將成為構造函數。若果一個類沒有構造函數,則呼叫基類的構造函數,若果有的話。 上文定義了一個 Auto_Cart 類,即 Cart 類加上一個構造函數,當每次使用「new」建立一個新的 Auto_Cart 類案例時,構造函數將自動呼叫並將一件商品的數目起始化為「10」。構造函數可以使用參數,而且這些參數可以是可選的,它們可以使構造函數更加有用。為了依然可以不帶參數地使用類,所有構造函數的參數應該提供預設值,使其可選。
也可以使用 @ 動作符來抑制發生在構造函數中的錯誤。例如 @new。
類 A 中的函數 B() 將立即成為類 B 中的構造函數,雖然並不是有意如此。PHP 4 並不關心函數是否在類 B 中定義的,或是是否被繼承來的。
析構函數是一種當物件被銷毀時,無論使用了 unset() 或是簡單的脫離範圍,都會被自動呼叫的函數。PHP 中沒有析構函數。可以用 register_shutdown_function() 來替代模擬大多數析構函數的效果。 | ||||||