Cómo validar la fecha en PHP

Cómo validar la fecha en PHP

Es esencial verificar si los valores de la fecha son válidos o no válidos cuando se trabajan con los valores de la fecha. Si el valor de la fecha no se toma en el formato correcto, se generará la salida incorrecta. Por lo tanto, validar la fecha es una tarea muy crucial para la aplicación. El valor de la fecha se puede validar utilizando múltiples funciones en PHP. Uno es comprobar Fecha() función y otra es createFromFormat () función que está debajo del Fecha y hora clase de PHP. Los usos de estas funciones para validar la fecha en PHP se han mostrado en este tutorial.

Validación de la fecha utilizando la función checkdate ()

El uso de la función checkDate () es una de las formas de validar una fecha en PHP. La sintaxis de esta función se da a continuación.

Sintaxis:

Bool Checkdate (int $ mes, int $ día, int $ año)

Esta función tiene tres argumentos, y todos los argumentos de esta función son obligatorios. Devuelve verdadero si el valor de la fecha es válido. De lo contrario, devuelve falso. Se muestran diferentes usos de la función de data de check () en esta parte del tutorial.

Ejemplo 1: Verifique la validez de los diferentes tipos de fecha

Cree un archivo PHP con el siguiente script que verifica la validez de cinco fechas usando la función check -date (). El var_dump () La función se ha utilizado para verificar la salida de la función check -date ().

/ *Verifique la validez de los diferentes tipos de valores de fecha */
//Fecha invalida
echo var_dump (date de chech (30,9,2022)) ",
";
//Fecha válida
echo var_dump (date de chech (12,16,2022)) ",
";
//Fecha válida
echo var_dump (date de chech (2,29,2020) ",", "
";
//Fecha invalida
echo var_dump (date de chech (2,29,2022)) ","
";
//Fecha válida
echo var_dump (date de comprobación (9,7,2022));
?>

La siguiente salida aparecerá después de ejecutar el script anterior:

Ejemplo 2: Imprimir mensaje basado en la salida de la función check -date ()

Cree un archivo PHP con el siguiente script para verificar el valor devuelto de la función checkdate () e imprima el mensaje en función del valor devuelto:

// Defina los valores de día, mes y año
$ día = 15;
$ mes = 10;
$ año = 2022;
// Asignar los valores de retorno
$ válido = date de chech ($ mes, $ día, $ año);
if ($ válido)
echo "$ día- $ mes- $ año la fecha es válida.";
demás
echo "$ día- $ mes- $ año la fecha es válida.";
?>

La siguiente salida aparecerá después de ejecutar el script anterior:

Ejemplo 3: Verifique la validez de la fecha tomada del usuario

Cree un archivo PHP con el siguiente script que tomará una fecha de nacimiento utilizando un formulario HTML y verifique si la fecha es válida o no válida utilizando la función CHECKE ().



Ingrese su cumpleaños:










// verifique si el formulario está enviado o no
if (isset ($ _ post ['enviar']))

$ mes = (int) $ _post ['m'];
$ day = (int) $ _post ['d'];
$ año = (int) $ _post ['y'];
// verifique si la fecha es válida o no válida
$ válido = date de chech ($ mes, $ día, $ año);
// Imprimir mensaje basado en el valor devuelto de la función check -date ()
if ($ válido)
$ msg = $ día.'-'.$ mes.'-'.$ año.'(dd-mm-yyyy) la fecha es válida.
';
demás
$ msg = $ día.'-'.$ mes.'-'.$ año.'(dd-mm-yyyy) fecha no es válida.';
// imprime el mensaje
echo $ msg;

?>

El siguiente formulario aparecerá después de ejecutar el script anterior:

El siguiente mensaje aparecerá después de enviar el formulario con el valor de la fecha de nacimiento, 16-12-2006:

Validación de fecha utilizando la función createFromFormat ()

Utilizando el createFromFormat () función del Fecha y hora La clase es otra forma de verificar la validez de una fecha. La sintaxis de esta función se proporciona a continuación:

Sintaxis:

DateTime Date_Create_From_Format (String $ Format, String $ Time, DateTimezone $ TimeZone)
O
DateTime DateTime :: CreateFromFormat (String $ Format, String $ Time, DateTimezone $ TimeZone)

El primer argumento de esta función es obligatorio, y se utiliza para tomar la cadena de formato de la fecha y la hora. El segundo argumento de esta función es obligatorio, y se usa para tomar el valor de fecha, hora o fecha de fecha. El tercer argumento es opcional y se usa para establecer la zona horaria. Devuelve un objeto de fecha y hora del éxito y un falso en la falla. Se han mostrado diferentes usos de esta función en esta parte del tutorial.

Ejemplo 4: Verifique la validez de la fecha utilizando las funciones createFromformat () y format ()

Cree un archivo PHP con el siguiente script que verifique si una fecha en particular es válida o no válida utilizando el createFromFormat () y format () funciones. El createFromFormat () la función se ha utilizado para crear un Fecha y hora objeto de un valor de fecha, y la función format () se ha utilizado para verificar la validez del valor de la fecha.

// Asignar un valor de fecha como cadena
$ dateval = "31-sep-2022";
// Crear objeto Date utilizando la función createFromFormat ()
$ objdate = DateTime :: CreateFromFormat ('D-M-Y', $ DateVal);
// verificar la fecha es válida o inválida
if ($ objdate && $ objdate-> format ('d-m-y') == $ dateval)
echo "$ dateval fecha es válida.";
demás
echo "$ dateval fecha no es válida.";
?>

La siguiente salida aparecerá después de ejecutar el script anterior:

Ejemplo 5: Verifique la validez de la fecha utilizando funciones createFromFormat () y getLasterRors ()

Cree un archivo PHP con el siguiente script que verifique si una fecha en particular es válida o no válida utilizando el createFromFormat () y getLasterRors () funciones. El función createFromFormat () fue utilizado para crear un Fecha y hora Objeto de un valor de fecha. Entonces el getLasterRors () La función se utilizó para verificar la validez del valor de la fecha verificando los valores de la matriz devuelto por esta función.

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

// Asignar un valor de fecha como cadena
$ dateVal = $ _get ['dt'];
// Generar fecha formateada
$ formatteddate = dateTime :: createFromFormat ('D-M-Y', $ DateVal);
// leer errores en una variable
$ errores = DateTime :: GetLasterRors ();
// Verifique el error
if ($ errores ['warning_count'] != 0 o $ errores ['ERROR_COUNT'] != 0)
echo "$ dateval no es válido.";
demás
echo "$ DateVal es válido.";

demás
echo "No se ha dado valor a la fecha.";
?>

La siguiente salida aparecerá después de ejecutar el script anterior si no se da ningún valor de fecha en el parámetro URL:

La siguiente salida aparecerá después de ejecutar el script anterior si el 31-sep-2022 El valor de la fecha se da en el parámetro URL y no es válido:

La siguiente salida aparecerá después de ejecutar el script anterior si el 30-Sep-2022 El valor de la fecha se proporciona en el parámetro URL y es válido:

Conclusión

Dos formas de verificar la validez de la fecha se han mostrado en este tutorial utilizando el comprobar Fecha() función y el createFromFormat () función del Fecha y hora clase usando múltiples ejemplos. Con suerte, los usuarios de PHP pueden verificar adecuadamente la validez de la fecha después de leer este tutorial.