Détermine si une variable est de type chaîne de caractères
La fonction strtotime() définition et utilisation avec exemple plus le détail sur la liste des paramétres
Version : PHP 4, PHP 5, PHP 7, PHP 8
La fonction de php strtotime() analyse une date ou une heure textuelle anglaise( au format anglaise) en timestamp
La fonction strtotime() essaye de lire une date au format anglais US dans la chaîne time, et de la transformer en timestamp Unix (le nombre de secondes depuis le 1er Janvier 1970 à 00:00:00 UTC), relativement au timestamp now, ou à la date courante si ce dernier est omis.
La foction strtotime () retourne un timestamp en cas de succès, FALSE sinon. Avant PHP 5.1.0, cette fonction retournait -1 en cas d'échec.
strtotime(time,now)
Paramètre | Description |
---|---|
time | Requis.Specifie une chaîne de temps date/heure à analyser. |
now | Facultatif. Specifie Le timestamp, représentant la date courante, utilisé pour le calcul relative des dates. |
Exemple : Copier le code
<?php echo strtotime("now"), "<br />"; echo strtotime("10 September 2000"), "<br />"; echo strtotime("+1 day"), "<br />"; echo strtotime("+1 week"), "<br />"; echo strtotime("+1 week 2 days 4 hours 2 seconds"), "<br />"; echo strtotime("next Thursday"), "<br />"; echo strtotime("last Monday"), "<br />"; ?>L'exemple ci-dessus va afficher :
1731133460
968544000
1731219860
1731738260
1731925462
1731542400
1730678400
Dans cet exemple nous avons deux dates sous format anglaise :
Date 1 : 2012-06-01 02:12:51
Date 2 : 2012-07-12 11:10:00
Comment faire pour calculer le nombre de jours entre ces deux dates avec PHP.
Nous allons utiliser la fonction strtotime()
puis la fonction round() pour arrondir.
Exemple : Copier le code
<?php error_reporting(E_ALL); ini_set("display_errors", 1); date_default_timezone_set('Europe/Paris'); $date_debut = strtotime("2012-06-01 02:12:51"); $date_fin = strtotime("2012-07-01 11:10:00"); echo "Il y a ".round(($date_fin - $date_debut)/60/60/24,0)." jours entre les deux dates"; ?>L'exemple ci-dessus va afficher :
Il y a 30 jours entre les deux dates
Pour ajouter des jours à une date on peut procéder de différentes manières. C’est très facile à faire en utilisant des fonctions intégrées comme strtotime(), date() en PHP.
Dans cet exemple nous avons une date sous format anglaise :
Date : 2012-06-01 02:12:51
Et nous voulons y ajouter 20 Jours
Voici le code source pour ajouter 20 jours à la date :
Exemple : Copier le code
<?php error_reporting(E_ALL); ini_set("display_errors", 1); date_default_timezone_set('Europe/Paris'); $date = "2012-06-01 02:12:51"; echo date('Y-m-d', strtotime($date. ' + 20 days')); ?>L'exemple ci-dessus va afficher :
2012-02-04