PHP4でのコンストラクタの挙動の覚書

2010/04/21 | PHPの基本

PHPはバージョン5からクラスのコンストラクタを__constructと記述できるようになった。もちろんバージョン4の時と同様に、クラス名と同じ名前のメソッドでもOKだ。PHP4の時のクラスを拡張した際のコンストラクタの挙動について、毎回忘れることがあるのでメモしておく。

class hoge
{
function hoge(){print(‘hoge’);}
}
class fuga extends hoge
{
function fuga(){print(‘fuga’);}
}
$obj=new fuga;

このコードを実行した際にhogeクラスで用意したコンストラクタhoge()は動作しない。実行結果はこうなる。

fuga

parent::__construct()みたいに呼び出すのと同様に$this->hoge()と呼び出す必要がある。

いつも「どうだったっけ」となるのでメモしておく。

コメントを残す


守谷市(まちの情報ポータル) 無料アンケートレンタルjpForm.net