IntlCalendar::equals
(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)
IntlCalendar::equals — Compare time of two IntlCalendar objects for equality
Beschreibung
Objektorientierter Stil
Prozeduraler Stil
Returns true if this calendar and the given calendar have the same time. The settings, calendar types and field states do not have to be the same.
Parameter-Liste
-
calendar
-
Eine IntlCalendar-Instanz.
-
other
-
The calendar to compare with the primary object.
Rückgabewerte
Returns true
if the current time of both this and the passed in
IntlCalendar object are the same, or false
otherwise.
Bei einem Fehler wird auch false
zurückgegeben. Um Fehlerzustände zu erkennen, kann die Funktion intl_get_error_code() verwendet werden oder Intl so konfiguriert werden, dass es Exceptions auslöst.
Beispiele
Beispiel #1 IntlCalendar::equals()
<?php
ini_set('date.timezone', 'UTC');
$cal1 = IntlCalendar::createInstance(NULL, 'es_ES');
$cal2 = clone $cal1;
var_dump($cal1->equals($cal2)); //TRUE
//The locale is not included in the comparison
$cal2 = IntlCalendar::createInstance(NULL, 'pt_PT');
$cal2->setTime($cal1->getTime());
var_dump($cal1->equals($cal2)); //TRUE
//And set fields state is not included as well
$cal2->clear(IntlCalendar::FIELD_YEAR);
var_dump($cal1->isSet(IntlCalendar::FIELD_YEAR) ==
$cal2->isSet(IntlCalendar::FIELD_YEAR)); //FALSE
var_dump($cal1->equals($cal2)); //TRUE
//Neither is the calendar type
$cal2 = IntlCalendar::createInstance(NULL, 'es_ES@calendar=islamic');
$cal2->setTime($cal1->getTime());
var_dump($cal1->equals($cal2)); //TRUE
//Only the time is
$cal2 = clone $cal1;
$cal2->setTime($cal1->getTime() + 1.);
var_dump($cal1->equals($cal2)); //FALSE