Como validar a data em php

Como validar a data em php

É essencial verificar se os valores da data são válidos ou inválidos ao trabalhar com os valores da data. Se o valor da data não for tomado no formato correto, a saída errada será gerada. Portanto, validar a data é uma tarefa muito crucial para o aplicativo. O valor da data pode ser validado usando várias funções no PHP. Um é checkdate () função e outra é createFromFormat () função que está sob o Data hora classe de php. Os usos dessas funções para validar a data no PHP foram mostrados neste tutorial.

Data Validação usando a função CheckDate ()

Usando a função CheckDate () é uma das maneiras de validar uma data no PHP. A sintaxe desta função é dada abaixo.

Sintaxe:

Bool CheckDate (int $ mês, int $ dia, int $ ano)

Esta função tem três argumentos, e todos os argumentos desta função são obrigatórios. Ele retorna verdadeiro se o valor da data for válido. Caso contrário, ele retorna falso. Diferentes usos da função CheckDate () são mostrados nesta parte do tutorial.

Exemplo 1: Verifique a validade de diferentes tipos de data

Crie um arquivo php com o seguinte script que verifica a validade de cinco datas usando a função checkdate (). O var_dump () A função foi usada para verificar a saída da função de check ().

/ *Verifique a validade de diferentes tipos de valores de data */
//Data inválida
eco var_dump (date date (30,9,2022)), "
";
//Data válida
eco var_dump (data de check (12,16.2022)), "
";
//Data válida
eco var_dump (data de check (2.29.2020)), "
";
//Data inválida
eco var_dump (data de check (2.29.2022)), "
";
//Data válida
eco var_dump (data de check (9,7,2022));
?>

A saída a seguir aparecerá após a execução do script anterior:

Exemplo 2: Imprimir mensagem com base na saída da função checkdate ()

Crie um arquivo php com o script a seguir para verificar o valor retornado da função checkdate () e imprima a mensagem com base no valor retornado:

// Defina os valores do dia, mês e ano
$ dia = 15;
$ mês = 10;
$ ano = 2022;
// atribui os valores de retorno
$ válido = checkdate ($ mês, $ dia, $ ano);
se ($ válido)
eco "$ dia- $ mês- $ data do ano é válida.";
outro
eco "$ dia- $ mês- $ data do ano é válida.";
?>

A saída a seguir aparecerá após a execução do script anterior:

Exemplo 3: Verifique a validade da data tirada do usuário

Crie um arquivo PHP com o seguinte script que levará uma data de nascimento usando um formulário HTML e verifique se a data é válida ou inválida usando a função CheckDate ().



Entre no seu aniversário:










// Verifique se o formulário é enviado ou não
if (isset ($ _ post ['submmit'])))

$ mês = (int) $ _post ['m'];
$ dia = (int) $ _post ['d'];
$ ano = (int) $ _Post ['y'];
// Verifique se a data é válida ou inválida
$ válido = checkdate ($ mês, $ dia, $ ano);
// Imprima a mensagem com base no valor retornado da função checkdate ()
se ($ válido)
$ msg = $ dia.'-'.$ mês.'-'.$ ano.'(dd-mm-yyyy) Data é válida.
';
outro
$ msg = $ dia.'-'.$ mês.'-'.$ ano.'(dd-mm-yyyy) Data é inválida.';
// Imprima a mensagem
eco $ msg;

?>

O formulário a seguir aparecerá após a execução do script anterior:

A mensagem a seguir aparecerá após o envio do formulário com o valor da data de nascimento, 16-12-2006:

Data Validação usando a função createfromformat ()

Usando o createFromFormat () função do Data hora A classe é outra maneira de verificar a validade de uma data. A sintaxe desta função é fornecida abaixo:

Sintaxe:

DateTime Date_create_from_format (string $ formato, string $ time, datetimeZone $ timegone)
Ou
DateTime DateTime :: createFromFormat (String $ formato, String $ Time, DateTimeZone $ TIMEZONE)

O primeiro argumento dessa função é obrigatório e é usado para pegar a sequência do formato da data e hora. O segundo argumento desta função é obrigatório e é usado para tomar o valor da data, hora ou data de data. O terceiro argumento é opcional e usado para definir o fuso horário. Ele retorna um objeto DateTime no sucesso e um falso no fracasso. Diferentes usos desta função foram mostrados nesta parte do tutorial.

Exemplo 4: Verifique a validade da data usando as funções CreateFromFormat () e Format ()

Crie um arquivo php com o seguinte script que verificará se uma data específica é válida ou inválida usando o createfromFormat () e formato () funções. O createFromFormat () função tem sido usada para criar um Data hora objeto de um valor de data e a função format () foi usada para verificar a validade do valor da data.

// atribui um valor de data como uma string
$ dateval = "31-SEP-2022";
// Crie objeto de data usando a função createfromFormat ()
$ objdate = dateTime :: createfromFormat ('d-m-y', $ dateVal);
// Verifique se a data é válida ou inválida
if ($ objdate && $ objdate-> formato ('d-m-y') == $ dateval)
eco "$ DateVal Data é válida.";
outro
eco "$ DateVal Data é inválida.";
?>

A saída a seguir aparecerá após a execução do script anterior:

Exemplo 5: Verifique a validade da data usando as funções CreateFromFormat () e GetLasterRors ()

Crie um arquivo php com o seguinte script que verificará se uma data específica é válida ou inválida usando o funções createfromFormat () e getLasterrors (). O função createfromFormat () foi usado para criar um Data hora objeto de um valor de data. Então o getLasterrors () A função foi usada para verificar a validade do valor da data, verificando os valores da matriz retornada por esta função.

if (isset ($ _ get ['dt'])))

// atribui um valor de data como uma string
$ dateval = $ _get ['dt'];
// gerar data formatada
$ formattedDate = dateTime :: createfromFormat ('d-m-y', $ dateVal);
// Leia erros em uma variável
$ erros = dateTime :: getLasterRors ();
// Verifique se há erro
if ($ erros ['warning_count'] != 0 ou $ erros ['error_count'] != 0)
eco "$ dateval é inválido.";
outro
eco "$ dateval é válido.";

outro
eco "nenhum valor de data foi dado.";
?>

A saída a seguir será exibida após a execução do script anterior se nenhum valor de data for fornecido no parâmetro URL:

A saída a seguir aparecerá após a execução do script anterior se o 31-SEP-2022 O valor da data é fornecido no parâmetro URL e é inválido:

A saída a seguir aparecerá após a execução do script anterior se o 30-SEP-2022 O valor da data é fornecido no parâmetro URL e é válido:

Conclusão

Duas maneiras de verificar a validade da data foram mostradas neste tutorial usando o checkdate () função e o createFromFormat () função do Data hora classe usando vários exemplos. Felizmente, os usuários do PHP podem verificar corretamente a validade da data depois de ler este tutorial.