PHP - Date et heure

Les dates font tellement partie de la vie quotidienne qu'il devient facile de travailler avec elles sans réfléchir. PHP fournit également des outils puissants pour l'arithmétique des dates qui facilitent la manipulation des dates.

Obtention de l'horodatage avec l'heure ()

PHP time()La fonction vous donne toutes les informations dont vous avez besoin sur la date et l'heure actuelles. Il ne nécessite aucun argument mais renvoie un entier.

L'entier retourné par time () représente le nombre de secondes écoulées depuis minuit GMT le 1er janvier 1970. Ce moment est connu sous le nom d'époque UNIX, et le nombre de secondes qui se sont écoulées depuis lors est appelé horodatage.

<?php
   print time();
?>

Cela produira le résultat suivant -

1480930103

C'est quelque chose de difficile à comprendre. Mais PHP offre d'excellents outils pour convertir un horodatage en une forme avec laquelle les humains sont à l'aise.

Conversion d'un horodatage avec getdate ()

La fonction getdate()accepte éventuellement un horodatage et renvoie un tableau associatif contenant des informations sur la date. Si vous omettez l'horodatage, il fonctionne avec l'horodatage actuel tel que renvoyé par time ().

Le tableau suivant répertorie les éléments contenus dans le tableau retourné par getdate ().

Sr. Non Clé et description Exemple
1

seconds

Secondes après les minutes (0-59)

20
2

minutes

Minutes après l'heure (0 - 59)

29
3

hours

Heures de la journée (0-23)

22
4

mday

Jour du mois (1 - 31)

11
5

wday

Jour de la semaine (0 - 6)

4
6

mon

Mois de l'année (1 - 12)

sept
sept

year

Année (4 chiffres)

1997
8

yday

Jour de l'année (0 - 365)

19
9

weekday

Jour de la semaine

Jeudi
dix

month

Mois de l'année

janvier
11

0

Horodatage

948370048

Vous avez maintenant un contrôle total sur la date et l'heure. Vous pouvez formater cette date et cette heure dans le format de votre choix.

Exemple

Essayez l'exemple suivant

<?php
   $date_array = getdate();
   
   foreach ( $date_array as $key => $val ){
      print "$key = $val<br />";
   }
	
   $formated_date  = "Today's date: ";
   $formated_date .= $date_array['mday'] . "/";
   $formated_date .= $date_array['mon'] . "/";
   $formated_date .= $date_array['year'];
   
   print $formated_date;
?>

Cela produira le résultat suivant -

seconds = 10
minutes = 29
hours = 9
mday = 5
wday = 1
mon = 12
year = 2016
yday = 339
weekday = Monday
month = December
0 = 1480930150
Today's date: 5/12/2016

Conversion d'un horodatage avec date ()

le date()function renvoie une chaîne formatée représentant une date. Vous pouvez exercer un énorme contrôle sur le format renvoyé par date () avec un argument de chaîne que vous devez lui passer.

date(format,timestamp)

La date () accepte éventuellement un horodatage s'il est omis, la date et l'heure actuelles seront alors utilisées. Toutes les autres données que vous incluez dans la chaîne de format transmise à date () seront incluses dans la valeur de retour.

Le tableau suivant répertorie les codes qu'une chaîne de format peut contenir -

Sr. Non Format et description Exemple
1

a

'am' ou 'pm' minuscules

pm
2

A

'AM' ou 'PM' majuscules

PM
3

d

Jour du mois, un nombre avec des zéros non significatifs

20
4

D

Jour de la semaine (trois lettres)

jeu
5

F

Nom du mois

janvier
6

h

Heure (format 12 heures - zéros non significatifs)

12
sept

H

Heure (format 24 heures - zéros non significatifs)

22
8

g

Heure (format 12 heures - pas de zéros non significatifs)

12
9

G

Heure (format 24 heures - pas de zéros non significatifs)

22
dix

i

Minutes (0 à 59)

23
11

j

Jour du mois (pas de zéros non significatifs

20
12

l (Lower 'L')

Jour de la semaine

Jeudi
13

L

Année bissextile ('1' pour oui, '0' pour non)

1
14

m

Mois de l'année (nombre - zéros non significatifs)

1
15

M

Mois de l'année (trois lettres)

Jan
16

r

La date au format RFC 2822

Jeu.21 déc.2000 16:01:07 +0200
17

n

Mois de l'année (nombre - pas de zéros non significatifs)

2
18

s

Secondes d'heure

20
19

U

Horodatage

948372444
20

y

Année (deux chiffres)

06
21

Y

Année (quatre chiffres)

2006
22

z

Jour de l'année (0 - 365)

206
23

Z

Décalage en secondes de GMT

+5

Exemple

Essayez l'exemple suivant

<?php
   print date("m/d/y G.i:s<br>", time());
   echo "<br>";
   print "Today is ";
   print date("j of F Y, \a\\t g.i a", time());
?>

Cela produira le résultat suivant -

12/05/16 9:29:47
Today is 5 2016f December 2016 at 9:29 am

J'espère que vous comprenez bien comment formater la date et l'heure en fonction de vos besoins. Pour votre information, une liste complète de toutes les fonctions de date et d'heure est donnée dans PHP Date & Time Functions.