Lid |
|
Stel je voor, je bent een lekkere dikke class en je bent ontzettend populair, iedere class roept jou op, want jij bent de class der classes, met jouw fantastische functies weet je iedereen te verleiden.
Enkel weet je graag wie je fans zijn die van jou gebruikmaken. Hoe kun je als class zijnde nu weten in welke class je opgeroepen bent?
Eventjes anders omschreven: class Foo vraagt naar class Bar, maar class Bar is kieskeurig en wil de naam van Foo weten die stout is geweest door zijn naam niet door te geven.
Ik vermoed dat ik het ergens in de reflection API van PHP moet zoeken, maar ik vind het niet, er moet toch een mogelijkheid zijn om te weten te komen in welke class class Bar is opgeroepen zonder een methode te gebruiken als:
<?php
class Foo
{
static function bar()
{
$bar = new Bar(__CLASS__);
}
}
class Bar
{
function __construct($naam)
{
echo $naam . ' is ook al fan van Bar!';
}
}
Foo::bar();//Foo is ook al fan van Bar!
?>
<?php class Foo { { $bar = new Bar(__CLASS__); } } class Bar { function __construct($naam) { echo $naam . ' is ook al fan van Bar!'; } } Foo::bar();//Foo is ook al fan van Bar! ?>
Greetz Laurent
|