2010年09月08日

PHPの罠



上記のコードだと、
Hoge#unk
が出力される。

selfは継承ガン無視でメソッドが定義されたクラスに束縛される。
staticメソッド内から別のstaticメソッド呼ぶなよハゲという思想なんだろうか。
その思想自体にいちゃもん付ける気はないけど、だったらselfなんて使い勝手良さそうなキーワードなくして欲しい。
PHP5.3以降ならば回避策があって、selfじゃなくstaticを使用すると実行時のクラスを参照してくれる。
selfはいらない子。



これで
Fuga#unk
が出力される。

また一つバッドノウハウが増えた。
PHPは直感に反する罠がたくさんあって、それぞれ知識として覚え続けてなきゃいけないので辛いです。
頭のいい人以外向かない言語。
posted by 膳 at 00:38| Comment(0) | TrackBack(0) | PHP