W3docs

Zonas Horarias en PHP

Una zona horaria es una región del mundo con hora estándar uniforme. En PHP, las zonas horarias se representan como cadenas de texto.

Una zona horaria es una región del mundo que tiene una hora estándar uniforme para fines legales, comerciales y sociales. En PHP, las zonas horarias se representan como cadenas de texto que identifican una región geográfica, como "America/New_York" o "Europe/London".

Funciones de Zona Horaria en PHP

PHP proporciona varias funciones para trabajar con zonas horarias. A continuación se muestran algunas de las funciones más utilizadas:

1. date_default_timezone_set()

Esta función establece la zona horaria predeterminada utilizada por todas las funciones de fecha/hora en un script. Acepta una cadena de zona horaria como argumento, por ejemplo "America/New_York" o "Europe/London".

2. date_default_timezone_get()

Esta función devuelve la zona horaria predeterminada utilizada por todas las funciones de fecha/hora en un script.

3. timezone_identifiers_list()

Esta función devuelve un array indexado que contiene todos los identificadores de zona horaria definidos.

4. timezone_abbreviations_list()

Esta función devuelve un array asociativo que contiene las abreviaturas de zona horaria y sus desplazamientos respecto a UTC. (Nota: Obsoleta en PHP 8.1 y eliminada en PHP 8.2. Use DateTimeZone::listIdentifiers() o las clases OOP modernas en su lugar.)

5. timezone_name_from_abbr()

Esta función devuelve el nombre de la zona horaria a partir de una abreviatura.

6. DateTimeZone::getOffset()

Este método devuelve el desplazamiento de la zona horaria respecto a UTC para un objeto DateTime dado.

Enfoque moderno: Aunque las funciones procedurales anteriores son compatibles con versiones anteriores de PHP, el desarrollo moderno en PHP recomienda el uso de las clases DateTime y DateTimeZone. Ofrecen un mejor diseño orientado a objetos, gestión automática del horario de verano y son el estándar para las aplicaciones PHP actuales.

Ejemplos de Uso

Veamos algunos ejemplos prácticos del uso de las funciones de zona horaria en PHP.

Ejemplo 1: Establecer la Zona Horaria Predeterminada

Supongamos que desea establecer la zona horaria predeterminada en "America/New_York". Puede hacerlo usando la función date_default_timezone_set(), de la siguiente manera:

Establecer la Zona Horaria Predeterminada en PHP

date_default_timezone_set("America/New_York");

Esto establece la zona horaria predeterminada en "America/New_York".

Ejemplo 2: Obtener la Zona Horaria Predeterminada

Supongamos que desea obtener la zona horaria predeterminada. Puede hacerlo usando la función date_default_timezone_get(). Para garantizar que este ejemplo se ejecute de forma independiente, primero establecemos una zona horaria predeterminada:

Obtener la Zona Horaria Predeterminada

php— editable, runs on the server

Esto muestra "The default timezone is: UTC".

Ejemplo 3: Listar los Identificadores de Zona Horaria

Supongamos que desea listar todos los identificadores de zona horaria definidos. Puede hacerlo usando la función timezone_identifiers_list():

Listar los Identificadores de Zona Horaria en PHP

php— editable, runs on the server

Esto muestra una lista de todos los identificadores de zona horaria definidos.

Ejemplo 4: Convertir Zonas Horarias con Clases Modernas

Para la conversión de zonas horarias y el manejo automático del horario de verano, use las clases DateTime y DateTimeZone:

Convertir Zonas Horarias en PHP

php— editable, runs on the server

Esto muestra la hora convertida en Londres, teniendo en cuenta automáticamente las diferencias del horario de verano.

Conclusión

En este artículo, hemos analizado las zonas horarias en PHP y las funciones utilizadas para trabajar con ellas. Hemos explicado qué son las zonas horarias y proporcionado ejemplos tanto de funciones procedurales heredadas como de enfoques orientados a objetos modernos. Utilizando estas funciones en sus aplicaciones PHP, podrá trabajar fácilmente con zonas horarias y garantizar que sus cálculos de fecha y hora sean precisos y confiables.

Práctica

Práctica
¿Qué puede inferir sobre el manejo de zonas horarias en PHP según la información de este sitio web?
¿Qué puede inferir sobre el manejo de zonas horarias en PHP según la información de este sitio web?
Was this page helpful?