PHP Velho Oeste 2024

IntlCalendar::set

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

IntlCalendar::setDefine um campo de horário ou vários campos comuns de uma vez

Descrição

Estilo orientado a objetos

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

Estilo procedural

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

Define um campo específico para o valor fornecido, ou define de uma só vez vários campos comuns. O intervalo de valores aceitos depende se o calendário está usado o modo leniente.

Para campos que conflitarem entre si, os campos que forem definidos mais tarde têm prioridade.

Este método não pode ser chamado com exatamente quatro argumentos.

Parâmetros

cal

Uma instância de IntlCalendar.

field

Uma das constantes de campo de data/horário da classe IntlCalendar. São valores inteiros entre 0 e IntlCalendar::FIELD_COUNT.

value

O novo valor para o campo informado.

year

O novo valor para IntlCalendar::FIELD_YEAR.

month

O novo valor para IntlCalendar::FIELD_MONTH. A sequência de meses é baseada em zero, isto é, janeiro é representado por 0, fevereiro por 1, …, dezembro é 11 e undecember (se o calendário tiver) é 12.

dayOfMonth

O novo valor para IntlCalendar::FIELD_DAY_OF_MONTH.

hour

O novo valor para IntlCalendar::FIELD_HOUR_OF_DAY.

minute

O novo valor para IntlCalendar::FIELD_MINUTE.

second

O novo valor para IntlCalendar::FIELD_SECOND.

Valor Retornado

Sempre retorna true.

Registro de Alterações

Versão Descrição
8.2.0 O tipo do retorno agora é true; anteriormente, era bool.

Exemplos

Exemplo #1 IntlCalendar::set()

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

// Chamadas feitas mais tarde têm prioridade
$cal = new IntlGregorianCalendar(2013, 6 /* julho */, 1);
$cal->set(IntlCalendar::FIELD_YEAR, 2012);
$cal->set(IntlCalendar::FIELD_EXTENDED_YEAR, 2011);
var_dump(IntlDateFormatter::formatObject($cal));


$cal = new IntlGregorianCalendar(2013, 6 /* julho */, 1);
$cal->set(IntlCalendar::FIELD_YEAR, 2012);
$cal->set(IntlCalendar::FIELD_EXTENDED_YEAR, 2011);
// O horário não foi recalculado ainda. Se o ano estendido for limpo,
// o ano definido anteriormente será usado
$cal->clear(IntlCalendar::FIELD_EXTENDED_YEAR);
var_dump(IntlDateFormatter::formatObject($cal));

O exemplo acima produzirá:

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

Veja Também

add a note

User Contributed Notes

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