Apprendre à coder sur pierre-giraud.com

DES COURS COMPLETS ET GRATUITS POUR TOUS

SOMMAIRE

Introduction

  1. Présentation du cours
  2. Introduction au PHP
  3. Mettre en place un env. de travail

Les bases en PHP

  1. Syntaxe de base du PHP
  2. Premières instructions PHP
  3. Introduction aux variables PHP
  4. Types de valeurs et concaténation
  5. Opérations sur les variables
  6. Conditions et opérateurs de comparaison
  7. Les conditions if, if...else et if... elseif... else
  8. Utilisation avancée des conditions
  9. Structures ternaires et switch
  10. Les boucles PHP
  11. Découverte des fonctions
  12. La portée des variables
  13. Les constantes PHP
  14. Les variables tableaux PHP
  15. Tableaux associatifs
  16. Tableaux multidimensionnels
  17. Test n°1

Gestion des dates en PHP

  1. Le timestamp
  2. Obtenir et formater une date
  3. Tester la validité d'une date
  4. Test n°2

Opérations sur les fichiers en PHP

  1. Lire, ouvrir, fermer un fichier
  2. Parcourir et lire un fichier par partie
  3. Créer un fichier et écrire dedans
  4. Ecrire dans un fichier
  5. Les instructions include et require
  6. Test n°3

Les variables superglobales

  1. Découverte des variables superglobales
  2. Les cookies
  3. Les sessions
  4. Test n°4

Les expressions régulières et PHP

  1. Découverte des regex
  2. Les fonctions PHP PCRE
  3. Quantifieurs et options
  4. Classes de caractères
  5. Test n°5

L'orienté objet en PHP

  1. Classes, instances et objets
  2. Propriétés et méthodes
  3. Extension de classe et héritage
  4. Le principe d'encapsulation
  5. La méthode constructeur
  6. L'opérateur de résolution de portée et la surcharge
  7. Constantes, méthodes et propriétés statiques
  8. Les classes et méthodes abstraites
  9. Les interfaces
  10. Les méthodes magiques
  11. Le chainage de méthodes

Notions avancées en POO

  1. Le typage explicite
  2. Les traits
  3. Les closures et les classes anonymes
  4. L'auto-chargement des classes
  5. Le mot clef final
  6. Résolution statique à la volée
  7. Parcourir des objets
  8. Le clonage d'objets

OBTENIR ET FORMATER UNE DATE EN PHP

La fonction PHP date()

La fonction PHP date() va nous permettre d’obtenir une date au format de notre choix, en formatant un timestamp spécifique.

On va obligatoirement devoir passer le format de date souhaité en argument de cette fonction.

On va également pouvoir passer un timestamp à notre fonction date() en argument. Ce timestamp est optionnel : si on ne précise rien, la fonction utilise par défaut le timestamp actuel.

Les formats de date en PHP

Nous allons utiliser des caractères qui possèdent une signification spéciale pour indiquer le format de date souhaité à notre fonction date().

Voici les caractères les plus couramment utilisés pour formater une date (liste non exhaustive attention) :

Caractère Signification
d Représente le jour du mois (entre 01 et 31)
m Représente un mois (entre 01 et 12)
n Représente un mois (entre 1 et 12)
M Représente un mois écrit en abrégé (« Jan » pour January, janvier)
Y Représente une année (ex : 2015)
l Représente le jour de la semaine (ex : Monday)
N Représente un jour de la semaine (entre 1 et 7, Monday = 1, Sunday = 7)
H Représente les heures (entre 00 et 23)
i Représente les minutes (entre 00 et 59)
s Représente les secondes (entre 00 et 59)

Faites bien attention à la casse lorsque vous définissez un format d’heure. En effet, certaines lettres vont signifier différentes choses selon que vous les écriviez en minuscule ou en majuscule.

Par exemple, un « i » minuscule va représenter les minutes dans une date tandis qu’un « I » majuscule va définir si on est en heure d’été ou en heure d’hiver.

Obtenir une date au format souhaité avec date()

Voyons immédiatement quelques exemples d’utilisation de la fonction date(), en utilisant ce qu’on a appris sur les formats de date.

Utilisation de la fonction PHP date()

On utilise la fonction PHP date() pour obtenir une date au format souhaité

Comme vous pouvez le remarquer, il suffit d’indiquer les bons caractères à la fonction date() afin que celle-ci affiche la valeur correspondante.

Dans les exemples ci-dessus, nous utilisons différents séparateurs pour séparer par exemple le jour, le mois et l’année. Notez que vous pouvez utiliser le séparateur de votre choix (du moment qu'il ne possède pas de signification spéciale pour la fonction date() bien évidemment).

Finalement, on remarque que les jours et mois apparaissent en anglais par défaut. C’est tout à fait normal puisque les langages informatiques sont basés sur des standards internationaux (et donc anglophones).

Nous allons voir immédiatement comment « transformer » nos dates au format français.

Transformer une date en français

Pour transformer une date de l’anglais vers le français, la solution la plus simple est certainement d’utiliser les tableaux en PHP.

En effet, nous allons utiliser le fait que les caractères « N » et « n » représentent des jours et mois sous forme de chiffres et utiliser ces chiffres pour récupérer ensuite des éléments précis dans nos tableaux.

Pour cela, nous allons commencer par créer deux tableaux numérotés ; le premier contenant les jours de la semaine écrits en français et le second contenant les mois écrits en français.

Création de tableaux numérotés stockant des jours et des mois

Comme vous pouvez le remarquer, nous attribuons une chaine de caractères vide en valeur de notre premier élément pour chaque tableau.

Nous faisons cela pour faciliter le formatage de la date par la suite. En effet, rappelez vous que le premier élément d’un tableau numéroté possède la clef 0 par défaut.

Or, justement, ce « 0 » ne représente rien pour nos dates puisque le caractère « N » va toujours correspondre à un chiffre entre 1 et 7 et « n » va représenter un chiffre entre 1 et 12.

En créant nos tableaux de cette façon-ci, nous allons donc pouvoir facilement récupérer un jour ou un mois de manière « logique », en utilisant les expressions date('N') et date('n') en clefs.

Voyons immédiatement en pratique comme on va s’y prendre :

Formatage d’un date en français en PHP

Affichage d’une date en français en PHP

Regardons de plus près l’exemple ci-dessus. Le code date('N') renvoie un chiffre entre 1 et 7 relatif au jour de la semaine.

Le chiffre 1 représente « Monday », c’est-à-dire « lundi » en français, « Tuesday » (mardi) correspond au 2, etc. jusqu’à « Sunday » (dimanche) pour 7.

Au jour où je teste ce code, nous sommes dimanche. La fonction date() renvoie donc le chiffre 7. On récupère donc la valeur associée à la clef 7 dans notre tableau $jours, c’est-à-dire « Dimanche ».

Ensuite, on récupère le jour du mois en chiffre (entre 1 et 31) grâce à date('d').

Finalement, date('n') renvoie un chiffre entre 1 et 12 correspondant au mois courant.

Je teste ce code en novembre, date('n') renvoie donc le chiffre 11.

Nous récupérons la valeur associée à la clef 11 dans notre tableau $mois grâce au code $mois[date('n')], c’est-à-dire la valeur « Novembre ».

Nous avons donc au final récupéré le texte « Dimanche 15 Novembre », qu’on affiche immédiatement grâce à une instruction echo.

Chapitre précédent

Chapitre suivant