oujood.com

Comment utiliser la fonction date_time_set() en PHP

Cet article présente la fonction date_time_set() en PHP et explique comment l'utiliser pour définir l'heure d'une instance DateTime.
La fonction date_time_set() permet de définir l'heure d'une instance DateTime.

Tutoriel sur la fonction date_time_set() en PHP

PHP Version : 5.2+
Évolution de PHP : PHP 5.3 : Changement de la valeur de retour de NULL à DateTime
PHP 7.1 : Ajout du paramètre microsecondes

La fonction date_time_set() est une fonction intégrée en PHP qui permet de modifier les valeurs d'une date et d'une heure spécifiées, en créant une nouvelle date et heure modifiée. Elle est particulièrement utile pour manipuler les objets DateTime en PHP.

Définition

La fonction date_time_set() a pour but de définir une nouvelle date et heure à partir d'un objet DateTime en spécifiant de nouveaux paramètres pour l'heure, les minutes et les secondes.

Syntaxe générale

Voici la syntaxe générale de la fonction :

<?php
    date_time_set(DateTime $objet_date, int $heure, int $minutes, int $secondes) : DateTime|false
    ?> 

Paramètres

  • $objet_date : L'objet DateTime que vous souhaitez modifier.
  • $heure : La nouvelle valeur de l'heure (entre 0 et 23).
  • $minutes : La nouvelle valeur des minutes (entre 0 et 59).
  • $secondes : La nouvelle valeur des secondes (entre 0 et 59).

Valeurs possibles

Les valeurs que vous pouvez utiliser pour les paramètres sont les suivantes :

  • Heure : de 0 à 23
  • Minutes : de 0 à 59
  • Secondes : de 0 à 59

Exemples pratiques d'utilisation

Exemple :       Copier le code

	<?php
    $date = new DateTime('2023-07-22 12:30:45');
    echo 'Date originale : ' . $date->format('Y-m-d H:i:s') . '<br>';

    date_time_set($date, 15, 45, 0);
    echo 'Date modifiée : ' . $date->format('Y-m-d H:i:s');
    ?>
    

Résultat :

Date originale : 2023-07-22 12:30:45
    Date modifiée : 2023-07-22 15:45:00
    

Dans le code suivant on créera deux objets DateTime et définira les heures, minutes et secondes correctement avant d'afficher les dates et heures formatées

Exemple :       Copier le code

<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<?php
    // Créer un objet DateTime pour le 1er janvier 2023
    $date1 = new DateTime('2023-01-01');
    // Définit l'heure à 12h00, 00 minutes, 00 secondes
    $date1->setTime(12, 00, 00);
    echo $date1->format('Y-m-d H:i:s')."<br>"; // Affiche la date et l'heure

    // Créer un objet DateTime pour le 31 décembre 2022
    $date2 = new DateTime('2022-12-31');
    // Définit l'heure à 23h59, 59 minutes, 59 secondes
    $date2->setTime(23, 59, 59);
    echo $date2->format('Y-m-d H:i:s'); // Affiche la date et l'heure
?>
</body>
</html>

Astuces et conseils d'utilisation

  • Assurez-vous d'utiliser un objet DateTime valide comme premier argument de la fonction.
  • La fonction date_time_set() ne modifie pas l'objet DateTime d'origine, mais renvoie un nouvel objet DateTime avec les valeurs modifiées.
  • Avant de manipuler les objets DateTime, assurez-vous d'avoir correctement défini le fuseau horaire en utilisant date_default_timezone_set() ou en configurant le fuseau horaire dans le fichier php.ini.
  • La fonction date_time_set() peut être utilisée pour définir l'heure d'une nouvelle instance DateTime ou l'heure d'une instance DateTime existante.
  • La fonction date_time_set() peut être utilisée avec n'importe quel fuseau horaire.

Avec cette fonction, vous pouvez facilement manipuler les objets DateTime en PHP et créer de nouvelles dates et heures en fonction de vos besoins spécifiques.

Reference de date/heure de PHP


Voir aussi nos tutoriel :

fonction vfprintf, vfprintf

crit une chaîne format e dans un flux

fonction htmlentities, htmlentities

Convertit tous les caractères éligibles en entités HTML

text-decoration

Spécifie la décoration à ajouter au texte