淺談PHP中的一些常識:類篇_PHP教程
推薦:PHP 5.0對象模型深度探索面向對象編程被設計來為大型軟件項目提供解決方案,尤其是多人合作的項目. 當源代碼增長到一萬行甚至更多的時候,每一個更動都可能導致不希望的副作用. 這種情況發生于模塊間結成秘密聯盟的時候,就像第一次世界大戰前的歐洲。 //haohappy注:喻指模塊間的關聯度
我把一些PHP中類的常識性整理出來,讓新手們更容易掌握PHP類,以便能快速看懂那些老大們寫的程序,呵呵,不過比較少,希望老大們補充一下或者修正其中錯誤理解。
Q:PHP中的類可以有構造函數么?
A:可以,只要函數名和類名相同,這個函數將成為構造函數。在使用 new 操作符來創建一個類的實例時,該構造函數將會自動調用,因此,可以把一些初始化工作放在構造函數里完成。
Q:PHP中的類有析構函數么?
A:沒有。當對象被銷毀,使用 unset() 或者簡單的脫離范圍,析構函數都會自動調用。但 PHP 中沒有析構函數。 如:
unset($foo);
就銷毀一個類對象$foo了。
Q:要如何繼承一個類?
A:使用關鍵字 extends 來繼承一個類,如:
class B extents A {
}
Q:在類的定義中如何引用自身?
A:使用 $this 來引用當前類自身,如:
$this->name = "Tom";
Q:在子類中如何使用父類?
A:使用 :: 操作符,且有兩種方式,一種是直接用父類名,如:
A::example();
一種是用 parent 關鍵字,如:
parent::example();
建議采用 parent:: 來引用父類。
Q:我不想創建類的實例,能直接使用類中的函數或變量嗎?
A:可以,采用 :: 操作符,如:
B::example();
就可以執行B類中的函數example(),而并沒有創建任何B類的對象,僅僅是作為一個類函數來調用,這對于功能模塊歸納組織很有好處。
Q:PHP有多重繼承么?//added by erquan
A:沒有。子類不能同時從兩個父類繼承,即一個孩子不能同時有兩個爸爸:)。子類必須依賴于一個且必須已存在的基類。
分享:談PHP中漢字替換與模式匹配的問題PHP 4.0中新添加了30個與組數有關的函數,其中一些常見的函數可以判斷一個數組中是否包含某個元素,對一個數組中的元素進行計數,添加或刪除數組中的元素或者對數組中的元素進行排序。 如果有一個很大的數組,而你需要找出其中是否包含一個特定的元素,就可
- 相關鏈接:
- 教程說明:
PHP教程-淺談PHP中的一些常識:類篇
。