Lontra Validator에서 PHP와 Laminas/Zend(ou não)를 사용하지 않고 유효성 검사

Apesar do Zend não estar mais tão popular nos últimos anos, principalmente depois que foi para as mãos da Linux Fundation, agora chamado de Laminas, eu continuo trabalhando com ele, pois ao meu ver é um framework muito sólido e versátil, fácil de identificar erros durante o desenvolvimento e baixo acoplamento.

O Laminas é (conforme o significado literal do nome) dividido em pequenas partes, cada coisa tem seu pacote, como forms, banco de dados, MVC, validadores, filtros 등

Pra ser mais direto ao assunto do artigo, muitas vezes precisioni de algumas validações que não estavam prontas e disponíveis no pacote laminas-validator, então resolvi desenvolver alguns:

ArrayRecordExists - 배열의 값이 데이터베이스에 존재하는지 확인
DateBetween - 날짜가 입력된 값 사이에 있는지 확인합니다.
DateGreaterThan - 날짜가 더 큰지 확인합니다.
DateLessThan - 날짜가 더 작은지 확인합니다.
EndsWith - 텍스트가 값으로 끝나는 경우
IsArray - 값이 유효한 배열인 경우
암호 - 입력한 값이 유효한 암호인지 확인합니다. 대문자, 소문자, 숫자, 특수문자 옵션이 있습니다.
StartsWith - 텍스트가 값으로 시작하는 경우
WordCount - 문자열의 단어 수를 확인합니다.

Essas validações foram feitas para serem integradas ao laminas-validator e laminas-inputfilter, mas funcionam também para abordagens Orientadas a Objetos em projetos em PHP puro ou em outros frameworks, apesar de não achar tão interessante nesses casos, mas espero que também te ajude.

Composer é bem simples를 통한 설치:

composer require cledilsonweb/lontra-validator


Pra usar também é bem simples:

$inputFilter->add(
    [
        'name' => 'input_name',
        'required' => true,
        'filters' => // your filters...,
        'validators' => [
            [
                'name' => DateBetween::class
                'options' => [
                    'max' => '2020-10-10', 
                    'min' => '2020-05-05', 
                    'format' => 'Y-m-d', 
                    'inclusive' => true
                ]
            ]
        ]
    ]
);


Ou em casos em que você não use o Laminas como framework no seu projeto:

$validator = new DateBetween([
    'max' => '2020-10-10', 
    'min' => '2020-05-05', 
    'format' => 'Y-m-d', 
    'inclusive' => true
]);
echo $validator->isValid('2020-06-06'); //true


Laminas 회의, Linux Foundation의 전당



이 작업을 수행할 때 프레임워크와 프레임워크를 조합할 수 있는 Laminas em seu projeto를 사용할 수 있습니다. Inclusive o InputFilter que é usado para validar dados, principalmente de formulas:

https://docs.laminas.dev/laminas-inputfilter/intro/

Então...



Tem sido uma mão na roda em meus projetos, tanto na empresa como em projetos pessoais, e espero que ajude você também. 이 제안은 Github에서 프로젝트를 진행하는 데 도움이 될 수 있습니다. 아브라소!

프로젝트 링크:



https://github.com/cledilsonweb/lontra-validator

좋은 웹페이지 즐겨찾기