PHP Conference Nagoya 2025

IntlCalendar::equals

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

IntlCalendar::equalsCompare time of two IntlCalendar objects for equality

Опис

Об'єктно-орієнтований стиль

public IntlCalendar::equals(IntlCalendar $other): bool

Процедурний стиль

intlcal_equals(IntlCalendar $calendar, IntlCalendar $other): bool

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.

Параметри

calendar

Примірник IntlCalendar.

other

The calendar to compare with the primary object.

Значення, що повертаються

Returns true if the current time of both this and the passed in IntlCalendar object are the same, or false otherwise.

У разі помилки також повертається false. Для визначення причини помилки використовується intl_get_error_code() або налаштовується Intl для викидання виключень.

Приклади

Приклад #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

add a note

User Contributed Notes

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