4.4 Filtro Personalizado
Filtrando dados do formulário¶
Diferente das [[validações|4.1-Validações]] onde você tem a opção de utilizar os métodos do Zend Framework os métodos de filtro para formulários não têm esta opção. O motivo é que ainda não houve interesse em incorporar este tipo filtro ainda.
Por outro lado você ainda tem a opção de criar seus próprios métodos de filtro assim como validações o que te proporciona a possibilidade de levar seus filtros a outro nível também.
Como fazer?¶
Dentro da sua classe de formulário (vamos usar de ex.: ModuleDefault/Form/Index/Index.php
) basta adicionar um método com visibilidade pelo menos protected
que recebe no máximo dois parâmetros sendo o primeiro obrigatório:
1 2 |
|
Este método deve retornar o valor do input
já com a aplicação dos filtros desejados.
Exemplo¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
|
Extendendo a classe \SuitUp\FormValidator\AbstractFormValidator
¶
Uma das grandes vantagens de utilizar Programação Orientada a Objetos do PHP é o conceito de herança. Não vamos entrar no mérito de explicar o que este conceito significa então na prática o SuitUp foi construído para você criar a sua classe de formulário herdando (extends) à \SuitUp\FormValidator\AbstractFormValidator
fazendo com que sua classe tenha todas as características dela sem alterá-la.
Desta maneira, quando você criar em sua classe de formulário um método de filtro ele será visível apenas dentro deste único formulário. Mas se por outro lado você tiver uma classe no "meio do caminho" que herda (extende) à \SuitUp\FormValidator\AbstractFormValidator
e todas as suas classes de formulário herdar dela você irá compartilhar os seus métodos de validação com todos seus formulários.
Parece, mas não é complicado!¶
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|