PHP4でのコンストラクタの挙動の覚書(2)
2010/04/23 | PHPの基本
PHP4のコンストラクタのメモをもう一つ。継承先のクラスにコンストラクタがなかった場合の挙動。使用するコードは同じもので、継承先のコンストラクタをコメントアウトした。
class hoge
{
function hoge(){print(‘hoge’);}
}
class fuga extends hoge
{
//function fuga(){print(‘fuga’);}
}
$obj=new fuga;
実行結果はこうなる。
hoge
「こういう仕様である」と理解して使えば問題ないのだろうけど、まともな発想に立てば使いにくい。他の言語はどうなのか全く知らないけれど、とまどう人も多いのではなかろうか。
といっても、PHP4はかなり駆逐されてしまっているので、こういう話題もほとんど出てこないだろうけど。