PHP 5.6.22 is available

DateTime::getTimestamp

DateTimeImmutable::getTimestamp

DateTimeInterface::getTimestamp

date_timestamp_get

(PHP 5 >= 5.3.0, PHP 7)

DateTime::getTimestamp -- DateTimeImmutable::getTimestamp -- DateTimeInterface::getTimestamp -- date_timestamp_getObtiene la marca de tiempo Unix

Descripción

Estilo orientado a objetos

public int DateTime::getTimestamp ( void )
public int DateTimeImmutable::getTimestamp ( void )
public int DateTimeInterface::getTimestamp ( void )

Estilo por procedimientos

Obtiene la marca de tiempo Unix.

Parámetros

Esta función no tiene parámetros.

Valores devueltos

Devuelve la marca de tiempo Unix que representa la fecha.

Ejemplos

Ejemplo #1 Ejemplo de DateTime::getTimestamp()

Estilo orientado a objetos

<?php
$fecha 
= new DateTime();
echo 
$fecha->getTimestamp();
?>

Estilo por procedimientos

<?php
$fecha 
date_create();
echo 
date_timestamp_get($fecha);
?>

El resultado de los ejemplos sería algo similar a:

1272509157

Notas

Usar U como parámetro de DateTime::format() es una alternativa cuando se utliza PHP 5.2.

Ver también

add a note add a note

User Contributed Notes 3 notes

up
24
Justin Heesemann
5 years ago
Note that for dates before the unix epoch getTimestamp() will return false, whereas format("U") will return a negative number.

<?php
$date
= new DateTime("1899-12-31");
// "-2209078800"
echo $date->format("U");
// false
echo $date->getTimestamp();
?>
up
6
heiccih at gmail dot com
2 years ago
In 32-bit system the unix timestamp will overflow if the date goes beyond year 2038 and this method will return false. In 64-bit systems this function will still work as intended. For more information please see http://en.wikipedia.org/wiki/Year_2038_problem.
up
0
miguelmuscat93 at gmail dot com
1 month ago
Note that getTimestamp() does not return the UTC timestamp. It returns the timestamp relative to the set timezone, or the default server timezone. This also applies to dates in timezones with Daylight Savings.

<?php
// 11th March 2016 @ 11:00 UTC has timestamp: 1457694000
$d1 = new DateTime('2016-03-11 11:00:00', new DateTimeZone('Europe/Rome'));
$t1 = $d1->getTimestamp();

// 11th April 2016 @ 11:00 UTC has timestamp: 1460372400
$d2 = new DateTime('2016-04-11 11:00:00', new DateTimeZone('Europe/Rome'));
$t2 = $d2->getTimestamp();

printf("11 March: %d (diff = %d less)\n", $t1, 1457694000 - $t1);
printf("11 April: %d (diff = %d less)", $t2, 1460372400 - $t2);

// Prints:
// 1457690400 (diff = 3600)
// 1460365200 (diff = 7200)
To Top