Reflection API ist eine großartige Sache da draußen, um das OOP-Zeug zu manipulieren, und es sieht so aus, als ob die meisten Entwickler sich dessen gar nicht bewusst sind oder es nie benutzt haben.
Reflection-API-Ansprüche:
PHP 5 kommt mit einer vollständigen Reflexion API, die die Fähigkeit hinzufügt Reverse-Engineering-Klassen, Schnittstellen, Funktionen, Methoden und Erweiterungen. Zusätzlich die Reflexions-API bietet Möglichkeiten zum Abrufen von Dokumentkommentaren für Funktionen, Klassen und Methoden.
Frage:
Diese Funktion ist derzeit nicht verfügbar dokumentiert; nur seine Argumentliste ist verfügbar.
Wo finde ich die Dokumentation überhaupt?
Reflection ist definitiv hier, um zu bleiben. Du kannst es verwenden, aber bedenke, dass es für einfache UseCases langsam und übertrieben ist. Die Verwendung einer der Funktionen im Funktionspaket Klassen / Objekte ist oft die schnellere Alternative.
Ein UseCase, in dem Reflection nützlich ist, ist das Analysieren von Annotationen im DocBlock einer Klasse. Zum Beispiel verwendet PHPUnit die Anmerkungen @test, um dem PHPUnit TestRunner mitzuteilen, dass er eine Methode als Test betrachten sollte. Die @covers-Annotation hilft beim Sammeln von Code Coverage-Daten. Das FLOW3-Framework verwendet Anmerkungen für sein AOP-Framework .
Leider, einige der neueren Ergänzungen zu PHP & gt; 5.3, sind noch nicht so viel dokumentiert. Schauen Sie sich einfach die SPL an . Gleiche Sache. Das bedeutet nicht, dass du es nicht benutzen kannst. Die Reflection-API ist sehr aussagekräftig und leicht aus den Methodennamen zu ermitteln. Und Google hat oft Blog-Posts über die Verwendung bestimmter Erweiterungen. Überprüfen Sie für die Reflection-API:
und für SPL
Etwas cooles, das ich gerade erst entdeckt habe. Ab Version 5.1.2 können Sie die Reflection-API über die Befehlszeile aufrufen :
%Vor%Tags und Links php oop documentation