2010-06-22 5 views

Répondre

14

Vous pouvez utiliser strtotime pour convertir la chaîne en un horodatage UNIX, en secondes. time() vous donnera l'horodatage UNIX actuel. soustrayez pour obtenir quel âge la date est en secondes, et diviser par 60*60*24 pour obtenir en quelques jours

Il est également faisable en utilisant DateTime::diff, bien que je trouve les fonctions de date plus facile que d'utiliser les classes

+3

Don » Pour ce faire, vous échouerez misérablement une fois la DST en jeu: '' date_default_timezone_set ("Europe/Amsterdam"); $ d1 = strtotime ("2013-10-27T00: 00: 00"); $ d2 = strtotime («2013-10-28 00:00:00»); var_dump (($ d2- $ d1)/(60 * 60 * 24)); '' sortie: double (1.0416666666667) –

10
$today = strtotime(date('Y-m-d H:i:s')); 
$expireDay = strtotime($row['ExpireDate']); 
$timeToEnd = $expireDay - $today;