可能性の重複:
Why is my constructor still called even if the class and constructor case are different?PHPでバグが見つかったのですか?何か逃しましたか?
<?php
abstract class foo {
function foof() {
echo "Hello, I'm foo :)";
}
}
class foo2 extends foo {
function foo2f() {
$this->foof();
}
}
class foo3 extends foo2 {
function foo3f() {
$this->foo2f();
}
}
$x = new foo3;
$x->foo3f();
?>
このコード出力(予想通り) "こんにちは、私がfoo :)だ" しかし、私はこのような何かにコードを変更するとき: http://pastebin.com/wNeyikpq
<?php
abstract class foo {
function fooing() {
echo "Hello, I'm foo :)";
}
}
class foo2 extends foo {
function foo2() {
$this->fooing();
}
}
class foo3 extends foo2 {
function foo3() {
$this->foo2();
}
}
$x = new foo3;
$x->foo3();
?>
PHPプリント:
こんにちは、私はFOOよ:)こんにちは、私はFOO :)
なぜですか?バグですか?
私が原因なペーストビン上の第2のコードを置きますstackoverflowへのバグ(笑) - http://cl.ly/3J352B14073S15282O2s – kiler129
これはPHPのバグではなく、StackOverflowのバグではありません。 –
一般的には、あなたが質問したことがあれば(たとえ渡してもそれを言いますが)、あなたが書いたコードではなく、使用している言語にバグがあると仮定すれば、ここで人々の怒りを引きます。 – jwiscarson