XXIII. Dates et heures

Introduction

Ces fonctions vous permettent de manipuler la date et l'heure sur le serveur qui exécute PHP. Vous pouvez utiliser ces fonctions pour formater la date et l'heure de nombreuses façons.

Note: N'oubliez pas que ces fonctions dépendent de la configuration locale de votre serveur. Faites notamment attention aux changements d'heure d'hiver et d'été (e.g. utilisez $date = strtotime('+7 days', $date) et non pas $date += 7*24*60*60 ) ainsi qu'aux années bissextiles lorsque vous utilisez ces fonctions.

Note: Les fuseaux horaires référencés dans cette section peuvent être trouvés dans la Annexe J, Liste des Fuseaux Horaires Supportés .

Pré-requis

Ces fonctions sont disponibles dans le module PHP standard, qui est toujours accessible.

Installation

Il n'y pas d'installation nécessaire pour utiliser ces fonctions, elles font parties du coeur de PHP.

Note: La dernière version de la base de données des fuseaux horaires peut être installée via le paquet PECL » timezonedb . Pour les utilisateurs de Windows, une bibliothèque DLL pré-compilée peut être téléchargée depuis le site PECL4Win : » php_timezonedb.dll .

Configuration à l'exécution

Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini .

Tableau 39. Options de configurations Date/Heure

Nom Par défaut Modifiable Historique
date.default_latitude "31.7667" PHP_INI_ALL Disponible depuis PHP 5.0.0.
date.default_longitude "35.2333" PHP_INI_ALL Disponible depuis PHP 5.0.0.
date.sunrise_zenith "90.83" PHP_INI_ALL Disponible depuis PHP 5.0.0.
date.sunset_zenith "90.83" PHP_INI_ALL Disponible depuis PHP 5.0.0.
date.timezone "" PHP_INI_ALL Disponible depuis PHP 5.1.0.

Pour plus de détails sur les constantes PHP_INI_*, reportez-vous à Annexe I, Directives du php.ini .

Voici un éclaircissement sur l'utilisation des directives de configuration.

date.default_latitude float

La latitude par défaut.

date.default_longitude float

La longitude par défaut.

date.sunrise_zenith float

L'heure de lever du soleil par défaut.

date.sunset_zenith float

L'heure du coucher du soleil par défaut.

date.timezone string

Le décalage horaire utilisé par toutes les fonctions date/heure si la variable d'environnement TZ n'est pas définie. L'ordre de priorité est décrit dans la page date_default_timezone_get() . Voir Annexe J, Liste des Fuseaux Horaires Supportés pour une liste des décalages horaires supportés.

Note: Les quatre premières options de configuration sont actuellement utilisées uniquement par les fonction date_sunrise() et date_sunset() .

Types de ressources

Cette extension ne définit aucune ressource.

Constantes pré-définies

Les constantes suivantes sont définies depuis PHP 5.1.1 et offrent une représentation standard des dates, qui peut être utilisée avec toutes les fonctions de formattage de date (comme date() ).

DATE_ATOM (chaîne de caractères )
Atom (exemple : 2005-08-15T15:52:01+00:00)
DATE_COOKIE (chaîne de caractères )
Cookies HTTP (exemple : Monday, 15-Aug-05 15:52:01 UTC)
DATE_ISO8601 (chaîne de caractères )
ISO-8601 (exemple : 2005-08-15T15:52:01+0000)
DATE_RFC822 (chaîne de caractères )
RFC 822 (exemple : Mon, 15 Aug 05 15:52:01 +0000)
DATE_RFC850 (chaîne de caractères )
RFC 850 (exemple : Monday, 15-Aug-05 15:52:01 UTC)
DATE_RFC1036 (chaîne de caractères )
RFC 1036 (exemple : Mon, 15 Aug 05 15:52:01 +0000)
DATE_RFC1123 (chaîne de caractères )
RFC 1123 (exemple : Mon, 15 Aug 2005 15:52:01 +0000)
DATE_RFC2822 (chaîne de caractères )
RFC 2822 (Mon, 15 Aug 2005 15:52:01 +0000)
DATE_RFC3339 (string )
Identique à DATE_ATOM (depuis PHP 5.1.3)
DATE_RSS (chaîne de caractères )
RSS (Mon, 15 Aug 2005 15:52:01 +0000)
DATE_W3C (chaîne de caractères )
World Wide Web Consortium (W3C) (exemple : 2005-08-15T15:52:01+00:00)

Les constantes suivantes existent depuis PHP 5.1.2 et spécifient un format retourné par les fonctions date_sunrise() et date_sunset() .

SUNFUNCS_RET_TIMESTAMP (entier )
Timestamp
SUNFUNCS_RET_STRING (entier )
Heures:minutes (exemple: 08:02)
SUNFUNCS_RET_DOUBLE (entier )
Heures en tant que nombre à point flottant (exemple 8.75)

Table des matières

checkdate — Valide une date grégorienne
date_create — Retourne un nouvel objet DateTime
date_date_set — Fixe la date
date_default_timezone_get — Récupère le décalage horaire par défaut utilisé par toutes les fonctions date/heure dans un script
date_default_timezone_set — Définit le décalage horaire par défaut de toutes les fonctions date/heure
date_format — Retourne la date mis en forme dans le format donné
date_isodate_set — Fixe la date ISO
date_modify — Modifie le timestamp
date_offset_get — Retourne le décalage de l'heure avancée
date_parse — Retourne un tableau associatif avec des informations détaillées sur une date donnée
date_sun_info — Retourne un tableau avec les informations sur lever/coucher du soleil ainsi que le début et la fin de l'aube
date_sunrise — Retourne l'heure de levé du soleil pour un jour et un endroit donnés
date_sunset — Retourne l'heure de coucher du soleil pour un jour et un endroit donnés
date_time_set — Fixe le temps
date_timezone_get — Retourne le fuseau horaire relatif au DateTime donné
date_timezone_set — Fixe le fuseau horaire pour l'objet DateTime
date — Formate une date/heure locale
getdate — Retourne la date/heure
gettimeofday — Retourne l'heure actuelle
gmdate — Formate une date/heure GMT/CUT
gmmktime — Retourne le timestamp UNIX d'une date GMT
gmstrftime — Formate une date/heure GMT/CUT en fonction de la configuration locale
idate — Formate une date/heure locale en tant qu'entier
localtime — Récupère l'heure locale
microtime — Retourne le timestamp UNIX actuel avec les microsecondes
mktime — Retourne le timestamp UNIX d'une date
strftime — Formate une date/heure locale avec la configuration locale
strptime — Analyse une date générée par strftime()
strtotime — Transforme un texte anglais en timestamp
time — Retourne le timestamp UNIX actuel
timezone_abbreviations_list — Retourne un tableau associatif contenant l'heure avancée, décalage et le nom du fuseau horaire
timezone_identifiers_list — Retourne un tableau indexé numériquement avec tous les identifiants des fuseaux horaires
timezone_name_from_abbr — Retourne le nom du fuseau horaire à partir de son abréviation
timezone_name_get — Retourne le nom du fuseau horaire
timezone_offset_get — Retourne le décalage du fuseau horaire
timezone_open — Retourne un nouvel objet DateTimeZone
timezone_transitions_get — Retourne toutes les transitions pour le fuseau horaire