Cambiar zona horaria o timezone en Laravel

Cambiar la zona horaria en nuestro servidor es de suma importancia, sobre todo si queremos trabajar con fechas.

Por defecto, PHP (y los frameworks que trabajen sobre el lenguaje) viene con una zona horaria preconfigurada; zona que no siempre nos servirá.

Por ejemplo, si somos de México, la fecha y hora estarán mal configuradas, y al querer trabajar con ellas, obtendremos datos que, si bien son correctos, no están ajustados para el tiempo de nuestro país o lugar de origen.

Laravel, un poderoso framework de PHP, pone a nuestra disposición una manera fácil de configurar la zona horaria que usaremos en todo nuestro proyecto.

Para cambiar la zona horaria o timezone, hay que seguir los siguientes pasos:

Paso 1

Una vez que esté generado nuestro proyecto, debemos ubicar el fichero llamado app.php dentro de la carpeta config. Es decir, el archivo está en config / app.php

Cuando lo encontremos, hay que abrirlo con nuestro editor de textos preferido.

Paso 2

Una vez abierto, nos encontraremos con muchos comentarios y un poco de código, pero no hay que preocuparnos por eso. Simplemente hay que buscar la línea que dice ‘timezone’ como se muestra en la imagen:

Zona horaria por defecto en Laravel
Zona horaria por defecto en Laravel

Paso 3

En la misma línea en donde está ‘timezone’ encontramos ‘UTC’, pues bien, simplemente hay que cambiar ‘UTC’ por la zona horaria de nuestra ubicación. La lista completa de zonas horarias pueden verse aquí: Listado de zonas horarias admitidas.

En mi caso, mi ubicación, o mejor dicho, la zona horaria que quiero que se tome es la de México. Entonces, ocuparé “America/Mexico_City”.

Paso 4

Simplemente hay que cambiar la línea, y poner la zona horaria de nuestra preferencia. La imagen muestra un ejemplo:

Zona horaria para México
Zona horaria para México

No hay que olvidar las comillas.

Después, simplemente hay que guardar cambios y todo quedará listo. No hace falta reiniciar el servidor ni nada de eso.

Cambiar zona horaria sin Laravel

A veces, es posible que no usemos frameworks y que queramos cambiar la zona horaria con código nativo. Pues bien, PHP también proporciona una función llamada date_default_timezone_set() que sirve para el mismo propósito.

La ventaja que nos ofrece Laravel es que solo tenemos que configurar una vez, y luego podremos usarla en toda nuestra aplicación.

En cambio, con código nativo, tenemos que cambiar la zona horaria al inicio de cada uno de nuestros archivos en los que queramos trabajar con fechas.

Eso es todo, espero les haya servido. Por cierto, este tutorial funciona con Laravel 5.4 pero supongo que debe funcionar en otras versiones.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

11 comentarios en “Cambiar zona horaria o timezone en Laravel”

  1. Pingback: Configurar zona horaria en PHP - Parzibyte's blog

  2. Pingback: Obtener fecha de inicio y fin de mes en PHP - Parzibyte's blog

  3. Pingback: Restringir acceso dependiendo de la hora o fecha usando PHP - Parzibyte's blog - El blog de Luis Cabrera

  4. Pingback: Cambiar zona horaria globalmente en PHP con php.ini - Parzibyte's blog - El blog de Luis Cabrera

  5. Pingback: Obtener nombre del mes actual en PHP - Parzibyte's blog - El blog de Luis Cabrera

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *