int mktime ( [int hour [, int minute [, int second [, int month [, int day [, int year [, int is_dst]]]]]]] )
mktime() retourne un timestamp UNIX
correspondant aux arguments fournis. Ce timestamp est un
entier long, contenant le nombre de secondes entre le début
de l'époque UNIX (1er Janvier 1970 00:00:00 GMT) et le temps
spécifié.
Les arguments peuvent être omis, de droite à gauche,
et tous les arguments manquants sont utilisés avec la valeur
courante de l'heure et du jour.
Liste de paramètres
hour
L'heure.
minute
Les minutes
second
Les secondes.
month
Le nombre représentant le mois.
day
Le nombre représentant le jour.
year
L'année, peut être sur deux ou quatre chiffres, avec des valeurs
allant de 0 Ã 69, correspondant au valeur 2000 Ã 2069 et 70 Ã 100,
correspondant au valeur 1970 Ã 2000. Sur les systèmes où time_t
un entier signé sur 32bits, ce qui est le plus courant de nos jours,
la période valide pour year est
quelque part près de 1901 et 2038, cependant, cette limitation
n'est plus valable depuis PHP 5.1.0.
is_dst
Ce paramètre peut être mis à 1 si l'heure d'hiver est appliquée (DST),
0 si elle ne l'est pas, et -1 (par défaut) si on ne sait pas.
Si l'on ne sait pas, PHP tente de le traiter lui-même.
Ceci peut occasionner des résultats inattendus (mais néanmoins correct).
Quelques temps sont invalides si DST est activé sur les systèmes où
PHP fonctionne ou is_dist est défini à 1.
Si DST est activé e.g. 2:00, tous les temps entre 2:00 et 3:00 sont invalides
et la fonction mktime() retourne une valeur indéfinie
(généralement une valeur négative). Quelques systèmes (e.g. Solaris 8)
activent DST Ã minuit, donc, le temps 0:30 du jour lorsque DST est activé
est évalué Ã 23:30 du jour précédent.
Note :
Depuis PHP 5.1.0, ce paramètre est déprécié. Comme résultat,
le nouveau gestionnaire de fuseau horaire doit être utilisé Ã la place.
Valeurs de retour
mktime() retourne un timestamp Unix des arguments donnés.
Si les arguments ne sont pas valides, la fonction retournera FALSE (avant
PHP 5.1, elle retournait -1).
Erreurs / Exceptions
Chaque appel à une fonction date/heure génèrera un message de type
E_NOTICE si le fuseau horaire n'est pas valide.,
et/ou un message de type E_STRICT si vous
utilisez la configuration du système ou la variable d'environnement
TZ. Voir aussi date_default_timezone_set()
Historique
Version
Description
3.0.10
Ajout du paramètre is_dst
5.1.0
Le paramètre is_dst est déprécié. Fait que la fonction
retourne FALSE en cas d'erreur, au lieu de -1.
5.1.0
Émet un message de type E_STRICT et E_NOTICE
lors d'erreurs de fuseaux horaires.
Exemples
Exemple 1. Exemple avec mktime()
mktime() est pratique pour faire des calculs de dates et des
validations, car elle va automatiquement corriger les valeurs invalides.
Par exemple, toutes les lignes suivantes vont retourner la même date :
"Jan-01-1998".
Le dernier jour d'un mois peut être décrit comme
le jour "0" du mois suivant, et non pas le jour -1. Les deux
exemples suivants vont donner :
"Le dernier jour de Fevrier 2000 est: 29".
<?php $lastday = mktime(0, 0, 0, 3, 0, 2000); echo strftime("Le dernier jour de Fevrier 2000 est : %d", $lastday); $lastday = mktime(0, 0, 0, 4, -31, 2000); echo strftime("Le dernier jour de Fevrier 2000 est : %d", $lastday); ?>
Notes
Attention
Avant PHP 5.1.0, les valeurs négatives des timestamp ne sont pas supportées sous
toutes les versions actuelles de Microsoft Windows. De ce fait, l'intervalle
valide pour les années est de 1970 Ã 2038, inclus.