(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)
IntlCalendar::equals — Compara horários de dois objetos IntlCalendar para igualidade
Estilo orientado a objetos
Estilo procedural
Retorna verdadeiro se este calendário e o calendário informadao tiverem o mesmo horário. As configurações, tipos de calendário e estados de campos não precisam ser os mesmos.
calendar
Uma instância de IntlCalendar.
other
O calendário a ser comparado com o objeto primário.
Retorna true
se os horário de ambos os objetos
IntlCalendar forem o mesmo, ou false
caso contrário.
Em caso de falha, false
também é retornado. Para detectar condições de erro, use intl_get_error_code() ou configure Intl para lançar exceções.
Exemplo #1 IntlCalendar::equals()
<?php
ini_set('date.timezone', 'UTC');
$cal1 = IntlCalendar::createInstance(NULL, 'es_ES');
$cal2 = clone $cal1;
var_dump($cal1->equals($cal2)); //TRUE
//A localidade não é incluída na comparação
$cal2 = IntlCalendar::createInstance(NULL, 'pt_PT');
$cal2->setTime($cal1->getTime());
var_dump($cal1->equals($cal2)); //TRUE
//E os estados definidos para os campos também não são incluídos
$cal2->clear(IntlCalendar::FIELD_YEAR);
var_dump($cal1->isSet(IntlCalendar::FIELD_YEAR) ==
$cal2->isSet(IntlCalendar::FIELD_YEAR)); //FALSE
var_dump($cal1->equals($cal2)); //TRUE
//E nem o tipo do calendário
$cal2 = IntlCalendar::createInstance(NULL, 'es_ES@calendar=islamic');
$cal2->setTime($cal1->getTime());
var_dump($cal1->equals($cal2)); //TRUE
//Apenas o instante de tempo é incluído
$cal2 = clone $cal1;
$cal2->setTime($cal1->getTime() + 1.);
var_dump($cal1->equals($cal2)); //FALSE