PHP 8.4.1 Released!

IntlCalendar::set

(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)

IntlCalendar::setDéfinit un champ de temps ou plusieurs champs communs en une seule fois

Description

Style orienté objet

public IntlCalendar::set(int $field, int $value): true
public IntlCalendar::set(
    int $year,
    int $month,
    int $dayOfMonth = NULL,
    int $hour = NULL,
    int $minute = NULL,
    int $second = NULL
): true

Style procédural

intlcal_set(IntlCalendar $cal, int $field, int $value): true
intlcal_set(
    IntlCalendar $cal,
    int $year,
    int $month,
    int $dayOfMonth = NULL,
    int $hour = NULL,
    int $minute = NULL,
    int $second = NULL
): bool

Définit soit un champ spécifique à la valeur donnée, soit définit en une seule fois plusieurs champs communs. La plage de valeurs acceptées dépend de si le calendrier utilise le mode tolérant.

Pour les champs qui entrent en conflit, les champs définis plus tard ont la priorité.

Cette méthode ne peut pas être appelée avec exactement quatre arguments.

Liste de paramètres

cal

Une instance IntlCalendar.

field

Une constantes de champ date/heure IntlCalendar. Ceux sont des valeurs entières comprises entre 0 et IntlCalendar::FIELD_COUNT.

value

La nouvelle valeur du champ donné.

year

La nouvelle valeur pour IntlCalendar::FIELD_YEAR.

month

La nouvelle valeur pour IntlCalendar::FIELD_MONTH. La séquence des mois commence à zéro, c'est-à-dire que janvier est représenté par 0, février par 1, …, décembre par 11 et Undecember (si le calendrier le supporte) par 12.

dayOfMonth

La nouvelle valeur pour IntlCalendar::FIELD_DAY_OF_MONTH.

hour

La nouvelle valeur pour IntlCalendar::FIELD_HOUR_OF_DAY.

minute

La nouvelle valeur pour IntlCalendar::FIELD_MINUTE.

second

La nouvelle valeur pour IntlCalendar::FIELD_SECOND.

Valeurs de retour

Retourne toujours true.

Historique

Version Description
8.2.0 Le type de retour est maintenant true, auparavant il était bool.

Exemples

Exemple #1 IntlCalendar::set()

<?php
ini_set
('date.timezone', 'Europe/Lisbon');
ini_set('intl.default_locale', 'pt_PT');

//Les derniers appels ont la priorité
$cal = new IntlGregorianCalendar(2013, 6 /* July */, 1);
$cal->set(IntlCalendar::FIELD_YEAR, 2012);
$cal->set(IntlCalendar::FIELD_EXTENDED_YEAR, 2011);
var_dump(IntlDateFormatter::formatObject($cal));


$cal = new IntlGregorianCalendar(2013, 6 /* July */, 1);
$cal->set(IntlCalendar::FIELD_YEAR, 2012);
$cal->set(IntlCalendar::FIELD_EXTENDED_YEAR, 2011);
//le temps n'a pas été recalculé. Si nous effaçons l'année étendue,
//l'année définie avant sera utilisée
$cal->clear(IntlCalendar::FIELD_EXTENDED_YEAR);
var_dump(IntlDateFormatter::formatObject($cal));

L'exemple ci-dessus va afficher :

string(20) "01/07/2011, 00:00:00"
string(20) "01/07/2012, 00:00:00"

Voir aussi

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top