Outils pour utilisateurs

Outils du site


symfony_4:php:les_dates

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
symfony_4:php:les_dates [2020/04/09 13:09]
admin créée
symfony_4:php:les_dates [2020/04/09 13:24] (Version actuelle)
admin
Ligne 1: Ligne 1:
-===== Manipulation de date =====+===== Manipulation de date (objet Datetime) =====
  
-Nouvelle date :+**Création d'une date :**
 <code> <code>
 $date = new \Datetime(); $date = new \Datetime();
Ligne 12: Ligne 12:
 </code> </code>
  
-Duplication d'une date :+---- 
 + 
 +**Duplication d'une date :** 
 + 
 +Attention car une simple égalité entre deux dates ne fera qu'une copie similaire à un passage d'adresse à une fonction en C : C'est à dire qu'en cas de modification de la première, la seconde sera aussi modifiée. Vous ne crée ainsi qu'une sorte de raccourci vers la 1ere date :
 <code> <code>
 +$dateA = new \Datetime('2020-01-05');
 +$dateB = $dateA;
 +
 +$dateA->sub( new \DateInterval('P4D'); //retrait de 4 jours
 +
 +$dateA->format('d/m/y'); // 01/01/2020
 +$dateB->format('d/m/y'); // 01/01/2020 car dateB ne sera toujours qu'un duplicata de dateA
 +
 +//de la même manière si on réalise une opération sur dateB, dateA sera affecté :
 +$dateB->add( new \DateInterval('P10D'); //ajout de 10 jours
 +$dateB->format('d/m/y'); // 10/01/2020
 +$dateA->format('d/m/y'); // 10/01/2020
 </code> </code>
 +Ainsi, pour réaliser une vrai copie d'une date, il faut donc faire appel à l'outil clone afin de clone l'objet Datetime :
 +<code>
 +$dateA = new \Datetime('2020-01-05');
 +$dateB = clone $dateA;
 +
 +$dateA->sub( new \DateInterval('P4D'); //retrait de 4 jours
 +
 +$dateA->format('d/m/y'); // 01/01/2020
 +$dateB->format('d/m/y'); // 05/01/2020 car dateB est distinct de dateA
 +
 +//de la même manière si on réalise une opération sur dateB, dateA ne sera pas affecté :
 +$dateB->add( new \DateInterval('P10D'); //ajout de 10 jours
 +$dateB->format('d/m/y'); // 15/01/2020
 +$dateA->format('d/m/y'); // 01/01/2020
 +</code>
 +
 +----
 +
 +**Comparaison :**
  
-Comparaison : 
 La comparaison est très simple et s'utilise comme s'il s'agissait de nombre standard : La comparaison est très simple et s'utilise comme s'il s'agissait de nombre standard :
 <code> <code>
symfony_4/php/les_dates.1586430565.txt.gz · Dernière modification: 2020/04/09 13:09 de admin