> Faqs > Regla de validación fecha en español Laravel

Regla de validación fecha en español Laravel

Hola, a ver si me ayudáis con esta:

Quiero usar el sistema de validaciones de Laravel para un campo de texto que tiene la fecha en formato español:

21/12/2022

¿Existe alguna regla de validación en Laravel para validar el formato de la fecha dd/mm/aaaa?

Respuestas

Como dice Miguel, es posible validar las fechas con cualquier formato en Laravel con la regla de validación date_format.

Puedes validar fechas en español con este código:

[
  'fecha' => ['required', 'date_format:d/m/Y'],
];

Pero con esta regla de validación de Laravel también podrías trabar en cualquier otra notación, por ejemplo en formato MySQL:

[
  'fecha' => ['required', 'date_format:Y-m-d'],
];

Los formatos se crean con cadenas que tienen una serie de códigos que se pueden usar para expresar diversas partes de la fecha. Existen muchas alternativas para prácticamente cualquier necesidada.

Por si alguien quiere saber cómo se crean los formatos para las fechas en PHP, lo tiene en la página de documentación de datetime format.

Alba
355 9 25 13

Como tal, no existe una regla de validación para fecha española, pero lo puedes hacer fácilmente.

Te paso el ejemplo para validar la fecha:

[
  'spanish_date' => ['required', 'date_format:d/m/Y'],
];

Como puedes ver, para las fechas usas los mismos códigos para formar el formato de fecha que se usa en la función date de php. No hay mucho misterio. Puedes validar fácilmente en otros formatos adaptando el código a tus necesidades.

Miguel Angel
3320 147 216 17
Gracias, veo que puedo validar la fecha en cualquier formato de esta manera...