11.2. Цепочки фильтров
Пред. | Глава 11. Zend_Filter | След.

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

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

    <?php
    // Предоставляет возможность создания цепочек фильтров
    require_once 'Zend/Filter.php';

    // Фильтры, нужные для примера
    require_once 'Zend/Filter/Alpha.php';
    require_once 'Zend/Filter/StringToLower.php';

    // Создание цепочки фильтров и добавление в нее фильтров
    $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`, могут использоваться в цепочке фильтров.

Пред. | Уровень выше | След.
Глава 11. Zend_Filter | Начало | 11.3. Написание фильтров