23.2. Zend_Server_Reflection
Poprzedni | Rozdział 23. Zend_Server | Następny

## 23.2. Zend_Server_Reflection

### 23.2.1. Wprowadzenie

Klasa Zend_Server_Reflection zapewnia standardowy mechanizm dla przeprowadzania introspekcji funkcji i klas dla potrzeb klas serwerów. Jest oparta na API Reflection PHP5 i rozszerza je aby zapewnić metody pobierania typów parametrów jakie przyjmuje funkcja, typów zwracanych wartości oraz opisów, pełnej listy prototypów funkcji i metod (np. wszystkie możliwe poprawne kombinacje wywołania), oraz opisów funkcji/metod.

Typowo ta funkcjonalność będzie używana przez programistów klas serwerów dla frameworka.

### 23.2.2. Użycie

Podstawowe użycie jest proste:

    <?php
    require_once 'Zend/Server/Reflection.php';
    $class    = Zend_Server_Reflection::reflectClass('My_Class');
    $function = Zend_Server_Reflection::reflectFunction('my_function');

    // Pobierz prototypy
    $prototypes = $reflection->getPrototypes();

    // Pobierz typ zwracanej wartości prototypu
    $prototype->getReturnType();

    // Pobierz parametry prototypu
    $prototype->getParameters();

    // Pobierz typ prototypu
    $parameter->getType();

    // Pobierz przestrzeń nazw dla klasy, funkcji lub metody
    // Przestrzenie nazw mogą być ustawione podczas tworzenia instancji
    // lub przez użycie metody setNamespace()
    $reflection->getNamespace();

`reflectFunction()` zwraca obiekt `Zend_Server_Reflection_Function`; `reflectClass` zwraca obiekt `Zend_Server_Reflection_Class`. Proszę sprawdź dokumentację API aby dowiedzieć się jakie metody ma każdy z nich.

Poprzedni | Początek rozdziału | Następny
Rozdział 23. Zend_Server | Spis treści | Rozdział 24. Zend_Service