ilDave
15-10-2007, 11:04
Salve :)
Sto facendo qualche esperimento con la oop e l'ereditarietà in php.
Ho un problema in questa situazione:
class A {
public function test() {
print __CLASS__;
print get_class($this);
}
public static function testStatic() {
print __CLASS__;
}
}
class B extends A {
}
$b = new B();
$b->test();
B::testStatic();
$b->test() stampa "AB".
B::testStatic() stampa "A".
Io avrei bisogno che B::testStatic() mi stampasse "B", ovvero che dicesse su quale classe è stato richiamato, e non in quale è stato definito. Non posso ovviamente usare get_class($this) perchè è un metodo statico...
Qualcuno ha qualche idea?
Grazie :)
Sto facendo qualche esperimento con la oop e l'ereditarietà in php.
Ho un problema in questa situazione:
class A {
public function test() {
print __CLASS__;
print get_class($this);
}
public static function testStatic() {
print __CLASS__;
}
}
class B extends A {
}
$b = new B();
$b->test();
B::testStatic();
$b->test() stampa "AB".
B::testStatic() stampa "A".
Io avrei bisogno che B::testStatic() mi stampasse "B", ovvero che dicesse su quale classe è stato richiamato, e non in quale è stato definito. Non posso ovviamente usare get_class($this) perchè è un metodo statico...
Qualcuno ha qualche idea?
Grazie :)