php在面向?qū)ο蟛糠钟泻芏嘞嚓P(guān)的魔術(shù)方法,這些方法為面向?qū)ο髮?shí)現(xiàn)提供了便利,本文將詳細(xì)介紹魔術(shù)方法
構(gòu)造方法
大多數(shù)類都有一種稱為構(gòu)造函數(shù)的特殊方法。當(dāng)創(chuàng)建一個對象時,它將自動調(diào)用構(gòu)造函數(shù),通常用它執(zhí)行一些有用的初始化任務(wù)
構(gòu)造函數(shù)的聲明與其它操作的聲明一樣,只是其名稱必須是兩個下劃線__construct( )。這是PHP5中的變化;PHP4的版本中,構(gòu)造函數(shù)的名稱必須與類名相同。為了向下兼容,如果一個類中沒有名為__construct( )的方法,PHP將搜索一個與類名相同的方法
void __construct ([ mixed $args [, $... ]] )
如果子類中定義了構(gòu)造函數(shù)則不會隱式調(diào)用其父類的構(gòu)造函數(shù)。要執(zhí)行父類的構(gòu)造函數(shù),需要在子類的構(gòu)造函數(shù)中調(diào)用 parent::__construct()。如果子類沒有定義構(gòu)造函數(shù)則會如同一個普通的類方法一樣從父類繼承(假如沒有被定義為 private 的話)
<?phpclass BaseClass { function __construct() { print "In BaseClass constructor\n"; } }class SubClass extends BaseClass { function __construct() { parent::__construct(); print "In SubClass constructor\n"; &