Introducción
Si trabajamos con fechas y horas en PHP, siempre necesitaremos tener la zona horaria de acuerdo a un lugar. Normalmente, cuando subimos nuestra app, la zona horaria cambia.
Es ahí en donde necesitamos saber cómo configurar o cambiar la zona horaria en CodeIgniter.
Cambiar timezone
Es muy fácil, y de hecho no es una función del framework, sino de PHP. Para ello, navegamos a application/config.php que supongo es un archivo incluido en todos los procesos.
Al inicio del script, agregamos la línea que tiene un comentario (las línea 1 y 2 ya estaban ahí, pero es para ejemplificar):
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
date_default_timezone_set('America/Mexico_City'); #Línea agregada
En mi caso puse America/Mexico_City porque esa es la zona horaria que quiero. Pero podemos poner la que necesitemos, aquí está la lista completa de zonas horarias.
Y con ello habremos configurado la zona horaria. Sólo para aclarar, así se ve el archivo config.php al final:
Pero como se podría realizar la configuración del sistema para que cuando se inicie sesión se configuré la zona horaria y muestre la hora y fecha de acuerdo a esa configuración?