ILIAS
release_7 Revision v7.30-3-g800a261c036
|
@classDescription Date and time handling More...
Public Member Functions | |
__construct ($a_date=null, $a_format=0, $a_tz='') | |
Create new date object. More... | |
__clone () | |
__sleep () | |
__wakeup () | |
isNull () | |
Check if a date is null (Datetime == '0000-00-00 00:00:00', unixtime == 0,...) More... | |
switchTimeZone ($a_timezone_identifier='') | |
Switch timezone. More... | |
getTimeZoneIdentifier () | |
get timezone identifier More... | |
increment ($a_type, $a_count=1) | |
increment More... | |
getUnixTime () | |
get unix time More... | |
getUTCOffset () | |
get UTC offset More... | |
setDate ($a_date, $a_format) | |
Set date. More... | |
get ($a_format, $a_format_str='', $a_tz='') | |
get formatted date More... | |
__toString () | |
to string for date time objects Output is user time zone More... | |
Static Public Member Functions | |
static | _before (ilDateTime $start, ilDateTime $end, $a_compare_field='', $a_tz='') |
compare two dates and check start is before end This method does not consider tz offsets. More... | |
static | _equals (ilDateTime $start, ilDateTime $end, $a_compare_field='', $a_tz='') |
Check if two date are equal. More... | |
static | _after (ilDateTime $start, ilDateTime $end, $a_compare_field='', $a_tz='') |
compare two dates and check start is after end This method does not consider tz offsets. More... | |
static | _within (ilDateTime $dt, ilDateTime $start, ilDateTime $end, $a_compare_field='', $a_tz='') |
Check whether an date is within a date duration given by start and end. More... | |
Data Fields | |
const | YEAR = 'year' |
const | MONTH = 'month' |
const | WEEK = 'week' |
const | DAY = 'day' |
const | HOUR = 'hour' |
const | MINUTE = 'minute' |
const | SECOND = 'second' |
Protected Member Functions | |
parsePartsToDate ($a_year, $a_month, $a_day, $a_hour=null, $a_min=null, $a_sec=null, $a_timezone=null) | |
Protected Attributes | |
$log | |
$timezone = null | |
$default_timezone = null | |
$dt_obj | |
@classDescription Date and time handling
Definition at line 33 of file class.ilDateTime.php.
ilDateTime::__construct | ( | $a_date = null , |
|
$a_format = 0 , |
|||
$a_tz = '' |
|||
) |
Create new date object.
@access public
mixed | integer string following the format given as the second parameter |
int | format of date presentation |
throws ilDateTimeException
Definition at line 68 of file class.ilDateTime.php.
References $DIC, ilTimeZone\_getInstance(), and setDate().
ilDateTime::__clone | ( | ) |
Definition at line 85 of file class.ilDateTime.php.
References $dt_obj.
ilDateTime::__sleep | ( | ) |
Definition at line 92 of file class.ilDateTime.php.
ilDateTime::__toString | ( | ) |
to string for date time objects Output is user time zone
@access public
return
Reimplemented in ilDate.
Definition at line 579 of file class.ilDateTime.php.
References IL_CAL_DATETIME.
ilDateTime::__wakeup | ( | ) |
Definition at line 97 of file class.ilDateTime.php.
References $DIC.
|
static |
compare two dates and check start is after end This method does not consider tz offsets.
So you have to take care that both dates are defined in the the same timezone
@access public
object | ilDateTime |
object | ilDateTime |
string | field used for comparison. E.g IL_CAL_YEAR checks if start is one or more years after than end |
string | timezone |
Definition at line 227 of file class.ilDateTime.php.
References get(), IL_CAL_DAY, IL_CAL_FKT_DATE, IL_CAL_MONTH, IL_CAL_YEAR, and isNull().
Referenced by ilObjGroupAccess\_registrationEnabled(), _within(), ilCalendarRecurrenceCalculator\applyDurationPeriod(), ilCalendarRecurrenceCalculator\applyLimits(), ilCalendarRecurrenceCalculator\calculateDateList(), ilDateDurationInputGUI\checkInput(), ilAppointmentPresentationConsultationHoursGUI\collectPropertiesAndActions(), ilCourseRegistrationGUI\fillRegistrationPeriod(), ilGroupRegistrationGUI\fillRegistrationPeriod(), ilConsultationHourBookingTableGUI\fillRow(), ilSessionClassificationPathGUI\findSessionContainerForItem(), ilPageObject\getActive(), ilCalendarAppointmentPanelGUI\getHTML(), ilCalendarAgendaListGUI\getHTML(), ilBookingEntry\isAppointmentBookableForUser(), ilECSCategoryMappingRule\matchesValue(), ilObjGroup\register(), ilObjectActivationGUI\update(), ilCourseContentGUI\updateManagedTimings(), ilCourseContentGUI\updatePersonalTimings(), and ilECSCategoryMappingRule\validate().
|
static |
compare two dates and check start is before end This method does not consider tz offsets.
So you have to take care that both dates are defined in the the same timezone
@access public
object | ilDateTime |
object | ilDateTime |
string | field used for comparison. E.g IL_CAL_YEAR checks if start is one or more years earlier than end |
string | timezone |
Definition at line 157 of file class.ilDateTime.php.
References get(), IL_CAL_DAY, IL_CAL_FKT_DATE, IL_CAL_MONTH, IL_CAL_YEAR, and isNull().
Referenced by ilObjGroupAccess\_registrationEnabled(), _within(), ilMiniCalendarGUI\addMiniMonth(), ilCalendarBlockGUI\addMiniMonth(), ilCalendarRecurrenceCalculator\applyDurationPeriod(), ilCalendarRecurrenceCalculator\applyLimits(), ilCalendarRecurrenceCalculator\calculateDateList(), ilBookingEntry\cancelBooking(), ilCourseRegistrationGUI\fillRegistrationPeriod(), ilGroupRegistrationGUI\fillRegistrationPeriod(), ilECSServerTableGUI\fillRow(), ilPageObject\getActive(), ilConsultationHourUtils\getConsultationHourLinksForRepositoryObject(), ilCalendarAgendaListGUI\getHTML(), ilCalendarBlockGUI\getHTML(), ilExerciseManagementGUI\handleIndividualDeadlineCallsObject(), ilECSTimePlace\loadFromJson(), ilObjCourseAccess\lookupRegistrationInfo(), ilObjGroupAccess\lookupRegistrationInfo(), ilECSCategoryMappingRule\matchesValue(), ilCalendarRecurrenceCalculator\optimizeEndingTime(), ilCalendarRecurrenceCalculator\optimizeStartingTime(), ilUserQuery\query(), ilObjGroup\register(), ilCalendarPresentationGUI\synchroniseExternalCalendars(), and ilCalendarEntry\validate().
|
static |
Check if two date are equal.
@access public
object | ilDateTime |
object | ilDateTime |
string | field used for comparison. E.g IL_CAL_YEAR checks if start is the same years than end |
string | timzone |
Definition at line 192 of file class.ilDateTime.php.
References get(), IL_CAL_DAY, IL_CAL_FKT_DATE, IL_CAL_MONTH, IL_CAL_YEAR, and isNull().
Referenced by ilCalendarUtil\_isToday(), _within(), ilMiniCalendarGUI\addMiniMonth(), ilCalendarBlockGUI\addMiniMonth(), ilCalendarRecurrenceCalculator\calculateDateList(), ilCalendarAppointmentGUI\edit(), ilSubItemSelectionTableGUI\fillRow(), ilSessionClassificationPathGUI\findSessionContainerForItem(), ilDatePresentation\formatPeriod(), ilCalendarAgendaListGUI\getHTML(), ilDatePresentation\isToday(), ilDatePresentation\isTomorrow(), ilDatePresentation\isYesterday(), and ilDateList\removeByDAY().
|
static |
Check whether an date is within a date duration given by start and end.
ilDateTime | $dt | |
ilDateTime | $start | |
ilDateTime | $end | |
type | $a_compare_field | |
type | $a_tz |
Definition at line 258 of file class.ilDateTime.php.
References _after(), _before(), and _equals().
Referenced by ilCalendarScheduleFilterTimings\addCustomEvents(), ilCalendarScheduleFilterExercise\addCustomEvents(), and ilCalendarHeaderNavigationGUI\getHTML().
ilDateTime::get | ( | $a_format, | |
$a_format_str = '' , |
|||
$a_tz = '' |
|||
) |
get formatted date
@access public
int | format type |
string | format string |
string | a specific timezone |
Reimplemented in ilDate.
Definition at line 506 of file class.ilDateTime.php.
References $default_timezone, $timezone, ilTimeZone\_getInstance(), getUnixTime(), IL_CAL_DATE, IL_CAL_DATETIME, IL_CAL_FKT_DATE, IL_CAL_FKT_GETDATE, IL_CAL_ISO_8601, IL_CAL_TIMESTAMP, IL_CAL_UNIX, and isNull().
Referenced by _after(), _before(), _equals(), ilConsultationHourUtils\findCalendarAppointmentsForBooking(), ilDatePresentation\formatDate(), ilDatePresentation\formatPeriod(), ilCmiXapiDateTime\fromIliasDateTime(), ilCalendarRegistration\getRegisteredUsers(), ilCalendarRecurrenceCalculator\getYearWeekDays(), ilCalendarRegistration\isRegistered(), ilLTIDataConnector\lookupResourcesForAllUsersSinceDate(), ilUtil\period2String(), ilExcel\prepareDateValue(), ilExAssignment\setIndividualDeadline(), ilCalendarRegistration\unregister(), and ilCmiXapiUser\updateFetchedUntilForObjects().
ilDateTime::getTimeZoneIdentifier | ( | ) |
get timezone identifier
@access public
Definition at line 138 of file class.ilDateTime.php.
Referenced by parsePartsToDate(), and setDate().
ilDateTime::getUnixTime | ( | ) |
get unix time
@access public
Definition at line 329 of file class.ilDateTime.php.
References isNull().
Referenced by get(), and increment().
ilDateTime::getUTCOffset | ( | ) |
get UTC offset
@access public
Definition at line 342 of file class.ilDateTime.php.
References isNull().
ilDateTime::increment | ( | $a_type, | |
$a_count = 1 |
|||
) |
increment
@access public
int | type |
int | count |
Definition at line 273 of file class.ilDateTime.php.
References DAY, getUnixTime(), HOUR, isNull(), MINUTE, MONTH, SECOND, WEEK, and YEAR.
Referenced by ilTimingsUser\handleNewMembership(), and ilCalendarSchedule\initPeriod().
ilDateTime::isNull | ( | ) |
Check if a date is null (Datetime == '0000-00-00 00:00:00', unixtime == 0,...)
Definition at line 109 of file class.ilDateTime.php.
Referenced by _after(), _before(), _equals(), ilDatePresentation\formatDate(), get(), getUnixTime(), getUTCOffset(), increment(), ilObjCourseGUI\infoScreen(), and ilObjGroupGUI\infoScreen().
|
protected |
Definition at line 354 of file class.ilDateTime.php.
References $format, and getTimeZoneIdentifier().
Referenced by setDate().
ilDateTime::setDate | ( | $a_date, | |
$a_format | |||
) |
Set date.
@access public
mixed | date |
int | format |
ilDateTimeException |
Definition at line 401 of file class.ilDateTime.php.
References $message, getTimeZoneIdentifier(), IL_CAL_DATE, IL_CAL_DATETIME, IL_CAL_FKT_GETDATE, IL_CAL_ISO_8601, IL_CAL_TIMESTAMP, IL_CAL_UNIX, parsePartsToDate(), and ilLogLevel\WARNING.
Referenced by __construct().
ilDateTime::switchTimeZone | ( | $a_timezone_identifier = '' | ) |
Switch timezone.
@access public
string | PHP timezone identifier |
ilDateTimeException |
Definition at line 121 of file class.ilDateTime.php.
References Vendor\Package\$e, and ilTimeZone\_getInstance().
Referenced by ilCalendarRecurrenceCalculator\adjustTimeZones().
|
protected |
Definition at line 49 of file class.ilDateTime.php.
Referenced by get().
|
protected |
Definition at line 54 of file class.ilDateTime.php.
Referenced by __clone().
|
protected |
Definition at line 46 of file class.ilDateTime.php.
|
protected |
Definition at line 48 of file class.ilDateTime.php.
Referenced by get().
const ilDateTime::DAY = 'day' |
Definition at line 38 of file class.ilDateTime.php.
Referenced by ilCalendarRecurrenceCalculator\applyBYMONTHDAYRules(), ilCalendarRecurrenceCalculator\applyBYYEARDAYRules(), ilCalendarSchedule\getByDay(), ilCalendarAgendaListGUI\getHTML(), ilCalendarHeaderNavigationGUI\getHTML(), increment(), ilCalendarRecurrenceCalculator\incrementByFrequency(), ilBookingReservationsTableGUI\initFilter(), ilCalendarRecurrenceCalculator\optimizeEndingTime(), and ilLoggerCronCleanErrorFiles\run().
const ilDateTime::HOUR = 'hour' |
Definition at line 39 of file class.ilDateTime.php.
Referenced by ilConsultationHoursGUI\createAppointments(), and increment().
const ilDateTime::MINUTE = 'minute' |
Definition at line 40 of file class.ilDateTime.php.
Referenced by ilCalendarRecurrenceCalculator\applyDurationPeriod(), ilConsultationHoursGUI\createAppointments(), and increment().
const ilDateTime::MONTH = 'month' |
Definition at line 36 of file class.ilDateTime.php.
Referenced by ilMiniCalendarGUI\addMiniMonth(), ilCalendarRecurrenceCalculator\applyBYMONTHRules(), ilCalendarHeaderNavigationGUI\getHTML(), ilCalendarBlockGUI\getViewControl(), increment(), ilCalendarRecurrenceCalculator\incrementByFrequency(), and ilCalendarHeaderNavigationGUI\incrementDate().
const ilDateTime::SECOND = 'second' |
Definition at line 41 of file class.ilDateTime.php.
Referenced by increment().
const ilDateTime::WEEK = 'week' |
Definition at line 37 of file class.ilDateTime.php.
Referenced by ilCalendarRecurrenceCalculator\applyBYWEEKNORules(), ilCalendarHeaderNavigationGUI\getHTML(), increment(), ilCalendarRecurrenceCalculator\incrementByFrequency(), and ilCalendarWeekGUI\show().
const ilDateTime::YEAR = 'year' |
Definition at line 35 of file class.ilDateTime.php.
Referenced by ilConsultationHoursGUI\createAppointments(), increment(), and ilCalendarRecurrenceCalculator\incrementByFrequency().