DateTimeImmutable::setTime

(PHP 5 >= 5.5.0, PHP 7, PHP 8)

DateTimeImmutable::setTimeDéfinit l'horaire

Description

publicDateTimeImmutable::setTime(
    int$hour,
    int$minute,
    int$second = 0,
    int$microsecond = 0
): DateTimeImmutable

Retourne un nouvel objet DateTimeImmutable avec l'heure définit à l'heure fournit.

Liste de paramètres

hour

Heure de l'horaire.

minute

Minutes de l'horaire.

second

Secondes de l'horaire.

microsecond

Microsecondes de l'horaire.

Valeurs de retour

Retourne un nouvel objet DateTimeImmutable avec les données modifiées.

Historique

VersionDescription
8.1.0 Le comportement avec les heures doubles existantes (pendant la transition DST) a changé. Auparavant, PHP choisissait la deuxième occurrence (après la transition DST), au lieu de la première occurrence (avant la transition DST).
7.1.0Le paramètre microsecond a été ajouté.

Exemples

Exemple #1 Exemple de DateTimeImmutable::setTime()

Style orienté objet

<?php
$date
= new DateTimeImmutable('2001-01-01');

$newDate = $date->setTime(14, 55);
echo
$newDate->format('Y-m-d H:i:s') . "\n";

$newDate = $date->setTime(14, 55, 24);
echo
$newDate->format('Y-m-d H:i:s') . "\n";
?>

Les exemples ci-dessus vont afficher quelque chose de similaire à :

2001-01-01 14:55:00 2001-01-01 14:55:24

Exemple #2 Values exceeding ranges are added to their parent values

<?php
$date
= new DateTimeImmutable('2001-01-01');

$newDate = $date->setTime(14, 55, 24);
echo
$newDate->format('Y-m-d H:i:s') . "\n";

$newDate = $date->setTime(14, 55, 65);
echo
$newDate->format('Y-m-d H:i:s') . "\n";

$newDate = $date->setTime(14, 65, 24);
echo
$newDate->format('Y-m-d H:i:s') . "\n";

$newDate = $date->setTime(25, 55, 24);
echo
$newDate->format('Y-m-d H:i:s') . "\n";
?>

L'exemple ci-dessus va afficher :

2001-01-01 14:55:24 2001-01-01 14:56:05 2001-01-01 15:05:24 2001-01-02 01:55:24

Voir aussi

To Top