Étendre les classes
Pour créer une version spéciale de
la classe interne (par exemple, pour créer une portion
HTML mise en évidence lors de l'export, pour avoir un accès
facile aux variables des membres au lieu des variables des
méthodes, ou bien pour avoir des méthodes utiles), il est possible
d'étendre la classe principale.
Étendre les classes internes
visibility = Reflection::getModifierNames($this->getModifiers());
}
}
/**
* Demo classe #1
*
*/
class T {
protected function x() {}
}
/**
* Demo classe #2
*
*/
class U extends T {
function x() {}
}
// Affichage des informations
var_dump(new My_Reflection_Method('U', 'x'));
?>
]]>
&example.outputs.similar;
array(1) {
[0]=>
string(6) "public"
}
["name"]=>
string(1) "x"
["class"]=>
string(1) "U"
}
]]>
Si l'on écrase le constructeur, il faut se rappeler d'appeler
le constructeur parent avant d'insérer le moindre code.
Si on ne le fait pas, voici ce qui arrivera :
Fatal error: Internal error: Failed to retrieve the reflection object