Cómo obtener la fecha y hora actuales en PHP

Minahil Noor 30 enero 2023
  1. Usando la función date() y time() para obtener la fecha y hora actuales en PHP
  2. Usando el objeto DateTime para obtener la fecha y hora actuales en PHP
Cómo obtener la fecha y hora actuales en PHP

En este artículo, presentaremos métodos para obtener la date y time actuales en PHP.

  • Usando la función date() y time()
  • Usando el objeto DateTime

Usando la función date() y time() para obtener la fecha y hora actuales en PHP

Podríamos usar funciones integradas date() y time() para obtener la date y time actuales en PHP. Estas funciones muestran la fecha y hora actuales independientemente de la zona horaria. La sintaxis correcta para usar estas dos funciones es la siguiente.

date($format, $timestamp);

La función incorporada date() tiene dos parámetros. Los detalles de sus parámetros son los siguientes

Parámetros Descripción
$format obligatorio Formato de fecha a mostrar. Tiene varias variaciones. Debería ser una cadena.
$timestamp Opcional Marca de tiempo para obtener la fecha. Si se omite, se devuelve la fecha actual.

Devuelve la date que se establece de acuerdo con el formato especificado.

time();

La función time() no acepta parámetros. Devuelve la marca de tiempo PHP actual. La marca de tiempo es la cantidad de segundos calculados desde la época de Unix.

El siguiente programa muestra cómo obtener la date y time actual independientemente de la zona horaria.

<?php
$DateAndTime = date('m-d-Y h:i:s a', time());  
echo "The current date and time are $DateAndTime.";
?>

El formato "m-d-Y h:i:s a" especifica la date devuelta con valor de mes, día y año de 4 dígitos, y el tiempo en horas, minutos y segundos.

Producción :

The current date and time are 05-20-2020 05:44:03 pm.

Una cosa a tener en cuenta aquí es que el tiempo no está configurado de acuerdo con alguna zona horaria. Es la hora que se muestra con la marca de tiempo de Unix. Si desea verificar el tiempo PHP actual en función de su zona horaria, debe configurar la zona horaria manualmente.

Por ejemplo, si desea verificar la hora actual en Amsterdam, debe configurar la zona horaria de Amsterdam manualmente. Para este propósito, se utiliza la función PHP date_default_timezone_set(). La sintaxis correcta para usar esta función es la siguiente

date_default_timezone_set($timezone);

Solo acepta un parámetro.

Parámetros Descripción
$timezone obligatorio Es una cadena que identifica la región para la que deseamos establecer la zona horaria. Puede consultar la lista de zonas horarias admitidas aquí.

Esta función devuelve un valor bool. Si la zona horaria se establece correctamente, devuelve true; de lo contrario, devuelve false.

El siguiente programa mostrará la hora después de configurar la zona horaria.

<?php
date_default_timezone_set('Europe/Amsterdam');    
$DateAndTime = date('m-d-Y h:i:s a', time());  
echo "The current date and time in Amsterdam are $DateAndTime.\n";
date_default_timezone_set('America/Toronto');    
$DateAndTime2 = date('m-d-Y h:i:s a', time());  
echo "The current date and time in Toronto are $DateAndTime2.";
?>

Producción :

The current date and time in Amsterdam are 05-20-2020 08:08:42 pm.
The current date and time in Toronto are 05-20-2020 02:08:42 pm.

Usando el objeto DateTime para obtener la fecha y hora actuales en PHP

En PHP, la clase DateTime se usa para tratar los problemas relacionados con la date y la time. La función format() de esta clase muestra la fecha y la hora en un formato específico.

Primero crearemos un objeto DateTime y luego llamaremos a la función format() para mostrar la fecha y la hora.

$ObjectName = new DateTime();
$ObjectName->format($format); 

La función format() acepta un parámetro.

Parámetros Descripción
$format obligatorio Formato de la fecha y hora. Debería ser una cadena.

El programa de ejemplo que muestra la date y time actual es el siguiente.

<?php
$Object = new DateTime();  
$DateAndTime = $Object->format("d-m-Y h:i:s a");  
echo "The current date and time are $DateAndTime.";
?>

La salida es la date y la time con el formato especificado. El tiempo que se muestra es el tiempo calculado desde la época de Unix.

Producción :

The current date and time are 20-05-2020 06:21:06 pm.

Si desea verificar la time de acuerdo con una zona horaria específica, deberá configurarla manualmente. Para este propósito, se utiliza la función integrada PHP de la clase DateTime setTimezone(). La sintaxis correcta para usar esta función es la siguiente.

$ObjectName = new DateTime();
$ObjectName->setTimezone(DateTimezone $timezone); 

La función setTimezone() acepta solo un parámetro. Devuelve un objeto DateTime en caso de éxito y False en caso de error.

Parámetro Descripción
$timezone obligatorio Es un objeto DateTimezone que especifica la zona horaria. Puede consultar la lista de zonas horarias admitidas aquí.

El programa de ejemplo que muestra el tiempo según una zona horaria específica es el siguiente.

<?php
$Object = new DateTime();  
$Object->setTimezone(new DateTimeZone('Europe/Amsterdam'));
$DateAndTime = $Object->format("d-m-Y h:i:s a");  
echo "The current date and time in Amsterdam are $DateAndTime.\n";
$Object->setTimezone(new DateTimeZone('America/Toronto'));
$DateAndTime = $Object->format("d-m-Y h:i:s a");  
echo "The current date and time in Toronto are $DateAndTime.";
?>

Producción :

The current date and time in Amsterdam are 20-05-2020 08:43:02 pm.
The current date and time in Toronto are 20-05-2020 02:43:02 pm.

Artículo relacionado - PHP Date

Artículo relacionado - PHP DateTime