Convertissez vos dates en timestamps unix, puis soustrayez les uns des autres. Vous obtiendrez la différence en secondes, que vous diviserez par 86400 (nombre de secondes dans un jour) pour obtenir le nombre approximatif de jours dans cette plage.
Si vos dates sont au format 25.1.2010
, 01/25/2010
o 2010-01-25
vous pouvez utiliser l'option strtotime
fonction :
$start = strtotime('2010-01-25');
$end = strtotime('2010-02-20');
$days_between = ceil(abs($end - $start) / 86400);
Utilisation de ceil
arrondit le nombre de jours jusqu'au prochain jour complet. Utilisez floor
à la place si vous voulez obtenir le nombre de jours complets entre ces deux dates.
Si vos dates sont déjà dans le format timestamp unix, vous pouvez sauter la conversion et faire simplement la fonction $days_between
partie. Pour les formats de date plus exotiques, vous devrez peut-être effectuer une analyse personnalisée pour obtenir un résultat correct.
2 votes
Les questions suivantes sur les SO pourraient vous aider : - Comment calculer la différence de date entre 2 dates en utilisant php - Différence de dates avec php - Calculer la différence entre les dates/heures en PHP - Différence de date en php ? - [Faire la différence entre
26 votes
Une doublure :
(new DateTime("2010-01-11"))->diff(new DateTime("2019-08-19"))->days;
0 votes
@billynoah - c'est la réponse la plus propre et la plus simple !