# Reflection

&reftitle.intro;

PHP comes with a complete reflection API that adds the ability to introspect classes, interfaces, functions, methods and extensions. Additionally, the reflection API offers ways to retrieve doc comments for functions, classes and methods.

Please note that certain parts of the internal API are missing the necessary code to work with the Reflection extension. E.g., an internal PHP class might be missing reflection data for properties. These few cases are considered bugs, however, so they should be discovered and fixed.

&reference.reflection.setup; &reference.reflection.constants; &reference.reflection.examples; &reference.reflection.extending; &reference.reflection.reflection; &reference.reflection.reflectionclass; &reference.reflection.reflectionclassconstant; &reference.reflection.reflectionenum; &reference.reflection.reflectionenumunitcase; &reference.reflection.reflectionenumbackedcase; &reference.reflection.reflectionzendextension; &reference.reflection.reflectionextension; &reference.reflection.reflectionfunction; &reference.reflection.reflectionfunctionabstract; &reference.reflection.reflectionmethod; &reference.reflection.reflectionnamedtype; &reference.reflection.reflectionobject; &reference.reflection.reflectionparameter; &reference.reflection.reflectionproperty; &reference.reflection.reflectiontype; &reference.reflection.reflectionuniontype; &reference.reflection.reflectiongenerator; &reference.reflection.reflectionfiber; &reference.reflection.reflectionintersectiontype; &reference.reflection.reflectionreference; &reference.reflection.reflectionattribute; &reference.reflection.reflector; &reference.reflection.reflectionexception;