Cria um novo IntlCalendar

# IntlCalendar::createInstance

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

IntlCalendar::createInstance — Cria um novo IntlCalendar

### Descrição

Estilo orientado a objetos

public static function IntlCalendar::createInstance(IntlTimeZone|DateTimeZone|string|null `$timezone` = `null`, ?string `$locale` = `null`): ?IntlCalendar

Estilo procedural

function intlcal_create_instance(IntlTimeZone|DateTimeZone|string|null `$timezone` = `null`, ?string `$locale` = `null`): ?IntlCalendar

Informados um fuso horário e uma localidade, este método cria um objeto IntlCalendar. Este método de criação pode retornar uma sub-classe de IntlCalendar.

O calendário criado representará o instante de tempo no qual foi criado, baseado no horário do sistema. Os campos podem ser todos limpos chamando-se IntCalendar::clear() sem argumentos. Veja também IntlGregorianCalendar::__construct().

### Parâmetros

`timezone`

  O fuso horário a ser utilizado.

  - `null`, neste caso o fuso horário padrão será usado, como especificado na configuração ini date.timezone ou através da função date_default_timezone_set() e como retornado por date_default_timezone_get().

  - Um objeto IntlTimeZone, que será usado diretamente.

  - Um objeto DateTimeZone. Seu identificador será extraído e um objeto de fuso horário ICU será criado; o fuso horário será apoiado pelo banco de dados da ICU, não pelo do PHP.

  - Uma string, que deve ser um identificador de fuso horário ICU válido. Consulte a função IntlTimeZone::createTimeZoneIDEnumeration(). Deslocamentos puros como `"GMT+08:30"` também são aceitos.

`locale`

  A localidade a ser utilizada ou `null` para usar a localidade padrão.

### Valor Retornado

A instância IntlCalendar criada ou `null` em caso de falha.

### Exemplos

Exemplo #1 IntlCalendar::createInstance()

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

    $cal = IntlCalendar::createInstance();
    echo "Sem argumentos\n";
    var_dump(get_class($cal),
            IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL));
    echo "\n";

    echo "Fuso horário explicitado\n";
    $cal = IntlCalendar::createInstance(IntlTimeZone::getGMT());
    var_dump(get_class($cal),
            IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL));
    echo "\n";

    echo "Localidade explicitada (com calendário)\n";
    $cal = IntlCalendar::createInstance(NULL, 'es_ES@calendar=persian');
    var_dump(get_class($cal),
            IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL));

O exemplo acima produzirá:

    Sem argumentos
    string(21) "IntlGregorianCalendar"
    string(68) "martes 18 de junio de 2013 14:11:02 Hora de verano de Europa Central"

    Fuso horário explicitado
    string(21) "IntlGregorianCalendar"
    string(45) "martes 18 de junio de 2013 12:11:02 GMT+00:00"

    Localidade explicitada (com calendário)
    string(12) "IntlCalendar"
    string(70) "martes 28 de Khordad de 1392 14:11:02 Hora de verano de Europa Central"

### Veja Também

- IntlGregorianCalendar::__construct() - Cria um objeto de calendário gregoriano

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open