Dans cet article, je vais vous aider à obtenir ou à formater la date et l’heure en PHP.
La fonction PHP date()
La fonction PHP date()
convertit un timestamp en une date et heure plus lisibles pour l’utilisateur.
L’ordinateur stocke les dates et les heures dans un format appelé UNIX Timestamp, qui mesure le temps en nombre de secondes depuis le début de l’époque Unix (à minuit le 1er janvier 1970, c’est-à-dire le 1er janvier 1970 00:00:00).
Comme il s’agit d’un format peu pratique à lire pour les humains, PHP convertit un timestamp dans un format lisible par les humains et transforme votre notation en un timestamp compris par l’ordinateur. La syntaxe de la fonction PHP date()
peut être donnée par .
date(format, timestamp)
Le paramètre format de la fonction date()
est obligatoire et spécifie le format de la date et de l’heure renvoyées. Cependant, le timestamp est un paramètre facultatif. S’il n’est pas inclus, la date et l’heure actuelles seront utilisées. L’instruction suivante affiche la date du jour :
$date_french = date("d/m/Y");
echo $date_french;
Résultat :
19/02/2022
Note : La fonction PHP date() renvoie la date et l’heure actuelles selon l’horloge intégrée du serveur web sur lequel le script a été exécuté.
Formatage des dates et des heures avec PHP
Le paramètre de format de la fonction php date() est en fait une chaîne qui peut contenir plusieurs caractères permettant de générer une chaîne de caractères contenant divers composants de la date et de l’heure, comme le jour de la semaine, le jour ou le mois en toute lettres, etc. Voici quelques-uns des caractères de formatage liés à la date qui sont couramment utilisés dans la chaîne de format :
- d – Représentation du jour du mois ; deux chiffres avec des zéros en tête (01 ou 31)
- D – Représenter le jour de la semaine dans le texte sous forme d’abréviation (Lun à Dim)
- m – Représenter le mois en chiffres avec des zéros en tête (01 ou 12)
- M – Représenter le mois en texte, en abrégé (Jan à Dec)
- y – Représenter l’année en deux chiffres (08 ou 14)
- Y – Représenter l’année en quatre chiffres (2008 ou 2014)
-
), des points (.
), des barres obliques (/
) ou des espaces pour ajouter un formatage visuel supplémentaire.echo date("d/m/Y") . "<br>";
echo date("d-m-Y") . "<br>";
echo date("d.m.Y");
Résultat :
19/02/2022
19-02-2022
19.02.2022
Conseil : vous pouvez utiliser la fonction PHP date() pour mettre automatiquement à jour la durée du droit d’auteur sur votre site Web, comme suit : Copyright © 2022
Formater l'heure avec la fonction php date
- h – Représentation de l’heure au format 12 heures avec des zéros en tête (01 à 12)
- H – Représentation de l’heure au format 24 heures avec des zéros en tête (00 à 23)
- i – représente les minutes avec des zéros en tête (00 à 59)
- s – Représentation des secondes avec des zéros en tête (00 à 59)
- a – Représentation en minuscules ante meridiem et post meridiem (am ou pm)
- A – Représentation en majuscules Ante meridiem et Post meridiem (AM ou PM)
echo date("h:i:s") . "<br>";
echo date("F d, Y h:i:s A") . "<br>";
echo date("h:i a");
Résultat :
10:30:40
February 19, 2022 10:30:40 PM
10:30 pm
La fonction PHP time()
time()
est utilisée pour obtenir l’heure actuelle sous la forme d’un timestamp Unix (le nombre de secondes depuis le début de l’époque Unix : 1er janvier 1970 00:00:00 GMT). $timestamp = time();
echo $timestamp;
Résultat :
1645303037
Nous pouvons convertir ce timestamp en une date lisible par l’homme en le passant à la fonction php date introduite précédemment.
$timestamp = 1645303037;
echo date("d F Y h:i:s", $timestamp);
Résultat :
19 February 2022 08:37:17
La fonction PHP timestamp mktime()
La fonction mktime() est utilisée pour créer le timestamp basé sur une date et une heure spécifiques. Si aucune date et heure n’est fournie, le timestamp pour la date et l’heure actuelles est renvoyé.
La syntaxe de la fonction mktime() peut être donnée par :
mktime(heure, minute, seconde, mois, jour, année)
L’exemple suivant affiche le timestamp correspondant à 10:20:12 le 19 février 2022 :
echo mktime(10, 20, 12, 2, 19, 2022);
Résultat :
1645266012
Note : Vous pouvez omettre autant d’arguments que vous le souhaitez, et la valeur correspondant à l’heure actuelle sera utilisée à la place. Si vous omettez tous les arguments, la fonction mktime() retournera le timestamp UNIX correspondant à la date et à l’heure actuelles, tout comme time().
// Obtenir le nom du jour de la semaine d une date particulière
echo date('l', mktime(0, 0, 0, 4, 1, 2022));
Résultat :
Friday
La fonction mktime() peut également être utilisée pour trouver une date particulière dans le futur après une période de temps spécifique. Comme dans l’exemple suivant, qui affiche la date qui tombe après 30 mois de la date actuelle ?
$date = mktime(0, 0, 0, date("m")+30, date("d"), date("Y"));
echo date("d/m/Y", $date);
Résultat :
19/08/2024
Les fonctions de date et d'heure de PHP 7
Voici une liste complète des fonctions de date et d’heure de PHP 7. Ces fonctions font partie du noyau de PHP, vous pouvez donc les utiliser dans votre script sans aucune installation supplémentaire, je vous invite aussi à consulter la classe DateTime sur le site php.
- checkdate() : Valide une date grégorienne.
- date_add() :Ajoute un nombre de jours, mois, années, heures, minutes et secondes à une date.
- date_create_from_format() : Retourne un nouvel objet DateTime formaté selon le format spécifié.
- date_create() : Renvoie un nouvel objet DateTime.
- date_date_set() : Définit une nouvelle date.
- date_default_timezone_get() : Retourne le fuseau horaire par défaut utilisé par toutes les fonctions date/heure dans un script.
- date_default_timezone_set() :Définit le fuseau horaire par défaut utilisé par toutes les fonctions date/heure d’un script.
- date_diff() : Retourne la différence entre deux dates.
- date_format() : Retourne une date formatée selon le format spécifié.
- date_get_last_errors() : Renvoie les avertissements et les erreurs trouvés lors de l’analyse d’une chaîne date/heure.
- date_interval_create_from_date_string() : Crée un DateInterval à partir des parties relatives de la chaîne.
- date_interval_format() : Formate l’intervalle.
- date_isodate_set() : Définit une date selon la norme ISO 8601.
- date_modify() : Modifie le timestamp.
- date_offset_get() : Retourne le décalage du fuseau horaire.
- date_parse_from_format() : Retourne un tableau associatif contenant des informations détaillées sur une date donnée, formatée selon le format spécifié.
- date_parse() : Retourne un tableau associatif contenant des informations détaillées sur une date donnée.
- date_sub() : Soustrait un nombre de jours, mois, années, heures, minutes et secondes d’une date.
- date_sun_info() : Renvoie un tableau contenant des informations sur le coucher/le lever du soleil et le début/la fin du crépuscule pour un jour et un lieu donnés.
- date_sunrise() : Renvoie l’heure du lever du soleil pour un jour et un lieu donnés.
- date_sunset() : Renvoie l’heure du coucher du soleil pour un jour et un lieu donnés.
- date_time_set() : Définit l’heure.
- date_timestamp_get() : Retourne le timestamp Unix représentant la date.
- date_timestamp_set() : Définit la date et l’heure sur la base d’un timestamp Unix.
- date_timezone_get() : Retourne le fuseau horaire relatif à la DateTime donnée.
- date_timezone_set() : Définit le fuseau horaire pour l’objet DateTime.
- date() : Formate une date et une heure locales.
- getdate() : Renvoie les informations de date/heure du timestamp ou de la date/heure locale actuelle.
- gettimeofday() : Retourne l’heure actuelle.
- gmdate() : Formate une date et une heure GMT/UTC.
- gmmktime() : Obtient le timestamp Unix pour une date GMT.
- gmstrftime() Formate une date et une heure GMT/UTC en fonction des paramètres régionaux.
- idate() Formate une date/heure locale sous forme d’un nombre entier.
- localtime() : Retourne l’heure locale.
- microtime() : Retourne le timestamp Unix actuel avec des microsecondes.
- mktime() : Retourne le timestamp Unix pour une date.
- strftime() : Formate une heure/date locale selon les paramètres locaux.
- strptime() : Analyse une date/heure générée avec strftime().
- strtotime() : Analyse une date/heure textuelle anglaise en un timestamp Unix.
- time() : Retourne l’heure actuelle sous la forme d’un timestamp Unix.
- timezone_abbreviations_list() : Retourne un tableau associatif contenant dst, offset et le nom du fuseau horaire.
- timezone_identifiers_list() : Retourne un tableau indexé contenant tous les identifiants de fuseau horaire définis.
- timezone_location_get() : Retourne les informations de localisation pour un fuseau horaire spécifié.
- timezone_name_from_abbr() :Retourne le nom du fuseau horaire à partir de l’abréviation.
- timezone_name_get() : Retourne le nom du fuseau horaire.
- timezone_offset_get() : Retourne le décalage du fuseau horaire par rapport à GMT.
- timezone_open() : Crée un nouvel objet DateTimeZone.
- timezone_transitions_get() : Retourne toutes les transitions pour le fuseau horaire.
- timezone_version_get() : Retourne la version actuelle de la base de tempsle