It's important to note that on 32-Bit systems getTimestamp() will return false for dates greater than 2038, while format("U") will return an unsigned integer
This will return false:
<?php
$dt = new DateTime('2039/1/1');
echo $dt->getTimestamp();
?>
But this will return a value:
<?php
$dt = new DateTime('2039/1/1');
echo $dt->format('U');
?>
DateTime::getTimestamp
date_timestamp_get
(PHP 5 >= 5.3.0)
DateTime::getTimestamp -- date_timestamp_get — Lit le timestamp Unix
Description
Style orienté objet
public int DateTime::getTimestamp
( void
)
Style procédural
Lit le timestamp Unix.
Liste de paramètres
Cette fonction ne contient aucun paramètre.
Valeurs de retour
Retourne le timestamp Unix représentant la date.
Exemples
Exemple #1 Exemple avec DateTime::getTimestamp()
Style orienté objet
<?php
$date = new DateTime();
echo $date->getTimestamp();
?>
Style procédural
<?php
$date = date_create();
echo date_timestamp_get($date);
?>
Les exemples ci-dessus vont afficher quelque chose de similaire à :
1272509157
Notes
Utiliser U comme paramètre de DateTime::format() est une alternative proposée pour PHP 5.2.
Voir aussi
- DateTime::setTimestamp() - Assigne la date et l'heure à l'aide d'un timestamp Unix
- DateTime::format() - Retourne la date au format demandé
xwisdom at yahoo dot com
25-Aug-2010 02:13
Justin Heesemann
11-Jun-2010 02:57
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();
?>
