Método is_date() do DataValidator

Olá galera! Continuando nossa série de posts que tem como assunto a classe DataValidator, hoje vamos abordar o método is_date(), que como o próprio nome já diz, trata-se de uma função para a validação de campos do tipo Data (ou Date se preferir).

O método é bem flexível pois permite a validação tanto de instâncias da classe DateTime como uma data (inclusive hora) em um formato específico definido pelo usuário.Veja uma validação utilizando uma instância da classe DateTime.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
ini_set('default_charset','UTF-8');    
include 'DataValidator.php';
 
$validate = new Data_Validator();
 
$data = new DateTime;
 
$validate->set('data', $data)->is_date();
 
if($validate->validate()){
    echo 'Tudo ok!';
}
else{
    print_r($validate->get_errors());
}

Agora veja que se você não quiser um objeto DateTime, você pode passar uma determinada data e informar via parâmetro qual o formato  ela deve obedecer.

4
5
6
7
8
9
10
11
12
$data = '10/01/2013'; //Data no formato d/m/Y
$validate->set('data', $data)->is_date('d/m/Y');
 
if($validate->validate()){
    echo 'Tudo ok!';
}
else{
    print_r($validate->get_errors());
}

Vejamos agora uma validação de hora no formato HH:mm:ss (Dica: Fique à vontade para passar retornos da função date() como parâmetros).

4
5
6
7
8
9
10
11
12
$data = date('H:i:s'); //Captura a hora atual no formato HH:mm:ss
$validate->set('data', $data)->is_date('H:i:s');
 
if($validate->validate()){
    echo 'Tudo ok!';
}
else{
    print_r($validate->get_errors());
}

Bom, acho que é isso.

Até a próxima

Abs!

É formado em Sistemas de Informação, pós-graduado em Sistemas de Banco de Dados e mestre em Educação com foco em Tecnologias Sociocomunitárias. Trabalha como professor de ensino técnico e tecnológico no Instituto Federal de Educação, Ciência e Tecnologia de São Paulo ministrando disciplinas nas áreas de programação, banco de dados, desenvolvimento de projetos e engenharia de software.

Posts relacionados

Comentários

  1. Rafael, venho acompanhando seus posts e vc está de parabéns. Estou especialmente acompanhando os posts sobre o DataValidator. Tenho algumas dúvidas, mas minha principal é quanto ao uso do método is_equals, não conseguir implementá-lo. Vou usá-lo para comparar emails e senhas nos formulários que solicitem a confirmações desses dados.

    1. Olá Phillip,

      Qual foi o problema que ocorreu?

      Segue um exemplo de utilização do método is_equals().

      1
      2
      3
      4
      
      $validate = new Data_Validator();
       
      $validate->set('campo1', 'algo')->is_equals('algo'); //Passa pelo teste
      $validate->set('campo2', 'algo')->is_equals('algo diferente'); //Não passa pelo teste

      Abs!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *