# Цепочки фильтров

Довольно часто встречается ситуация, когда к одним и тем же данным нужно применить несколько фильтров в определенном порядке. Например, форма аутентификации должна принимать имя пользователя, состояшее только из алфавитных символов в нижнем регистре. Zend_Filter предоставляет простой метод, через который составляется цепочка из фильтров. Следующий код демонстрирует создание цепочки из двух фильтров для имени пользователя:

    // Создание цепочки фильтров и добавление в нее фильтров
    $filterChain = new Zend_Filter();
    $filterChain->addFilter(new Zend_Filter_Alpha())
                ->addFilter(new Zend_Filter_StringToLower());

    // Фильтрация имени пользователя
    $username = $filterChain->filter($_POST['username']);

Фильтры применяются в том же порядке, в котором они были добавлены в Zend_Filter. В примере выше из имени пользователя сначала удаляются все неалфавитные символы, затем все символы приводятся к нижнему регистру.

Все объекты, реализующие интерфейс Zend_Filter_Interface, могут использоваться в цепочке фильтров.