Vous êtes sur la page 1sur 2

Manipulation des dates / heures en MySQL / PHP

I. Langage SQL (dans une requête)


 La fonction NOW ( ) ; : Obtenir la date et l'heure actuelles :
Exemple : INSERT INTO Achat (NumCli, NumArt, DateAchat) VALUES (0123455, 'XC54', NOW() ) ;
La date sera alors automatiquement remplacée par la date et l'heure actuelles au format AAAA-MM-JJ
HH:MM:SS.
Notez qu'il existe aussi les fonctions CURDATE () et CURTIME () qui retournent uniquement la date et
l'heure.

 Les fonctions DAY( ), MONTH( ), YEAR( ) : extraire le jour, le mois ou l'année :


Exemple : Extraire des informations d'une date ? C'est facile ! Voici un exemple d'utilisation :
SELECT Numcli, NumArt, DAY(DateAchat) AS ‘jour’ FROM Achat ;
On récupèrera trois champs : le numéro du client, le numéro de l’article et le numéro du jour où il a été
acheté.

 Les fonctions HOUR( ), MINUTE ( ), SECOND( ) : extraire les heures, minutes, secondes
De la même façon, avec ces fonctions il est possible d'extraire les heures, minutes et secondes d'un champ de
type DATETIME ou TIME.
II. Langage PHP
 Format de la date en PHP :
o Format ISO (chaine) : Le format de date ISO le plus utilisé est le suivant : “AAAA-MM-JJ HH:ii:ss”, on
l'utilise aussi sans l'heure : “AAAA-MM-JJ”. (ii : les minutes).
o Timestamp : il correspond au nombre de secondes écoulées depuis le 1er Janvier 1970. Exemple, nous
sommes le 09/04/2008 et il est 14:04:21, le timestamp correspondant est : 1207742661.

 La fonction Date (‘format’) : récupération de la date système au format ISO (chaine) :


o Exemple 1 : echo (date("d-m-Y")); affiche : 24-04-2023
o Exemple 2 : echo (date("H:i:s")); affiche : 15 :05 :30

 On peut aussi afficher une date selon un format ISO à partir d’un timestamp :
o Exemple3 : echo date("d/m/Y H:i:s", 1207742661) // Affiche : 09/04/2008 14:04:21

 La fonction GetDate( ) : Retourne un tableau contenant les informations de date et d'heure du timestamp 
lorsqu'il est fourni, sinon, le timestamp de la date courante locale.
Le tableau comporte les éléments suivants (indice) :

seconds minutes hour mday wday mon year yda Weekday month
s y

o Exemple1 : $x=getdate(); echo $x['mday']."-".$x['mon']."-".$x['year']; affiche : 24-04-2023 (aujourd’hui)


o Exemple1 : $x=getdate(1207742661); echo $x['mday']."-".$x['mon']."-".$x['year']; affiche : 09-04-2008
puisque la valeur 1207742661 représente le nombre des secondes depuis 01/01/1970 et 09/04/2008.

 La fonction Mktime (hh,ii,ss,mm,dd,yy ) : Cette fonction permet de créer une date en timestamp à
partir des numéros des jours, des mois, d’années, des heures des minutes et des secondes.
o Exemple1 :
 Nous allons dans cet exemple chercher la date d'il y a 3 ans et 6 mois et 43 jours, sans faire de
calculs savants. // Affiche : 12/09/2012 15:34:30
 $time = mktime(date("H"), date("i"), date("s"), date("m")-6, date("d")-43, date("Y")-3);
 echo date("d/m/Y H:i:s", $time);
 la fonction CheckDate (mm,jj,aaaa) : Elle retourne TRUE si la date représentée par le jour j, le mois m et
l'année a est valide et sinon FALSE.
o Exemple : checkdate(02,29,2015) : retourne FALSE et checkdate(002,29,2016) : retourne TRUE.
 La fonction Strtotime( ) : convertie une date ISO (chaine de caractère) en un timestamp.
o Exemple : $X = strtotime("04/09/2008 14:04:21") ; echo ($X) : affiche la valeur 1207742661.
o Attention format anglais (month, day, year)

Vous aimerez peut-être aussi