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
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/40588666

この記事へのトラックバック