IntlCalendar::fromDateTime
(PHP 5.5.0, PECL >= 3.0.0a2)
IntlCalendar::fromDateTime — Create an IntlCalendar from a DateTime object or string
Description
Object oriented style
Procedural style
Creates an IntlCalendar object either from a DateTime object or from a string from which a DateTime object can be built.
The new calendar will represent not only the same instant as the given DateTime (subject to precision loss for dates very far into the past or future), but also the same timezone (subject to the caveat that different timezone databases will be used, and therefore the results may differ).
Parameters
-
dateTime
-
A DateTime object or a string that can be passed to DateTime::__construct().
Return Values
The created IntlCalendar object or NULL
in case of
failure. If a string is passed, any exception that occurs
inside the DateTime constructor is propagated.
Examples
Example #1 IntlCalendar::fromDateTime()
<?php
ini_set('date.timezone', 'Europe/Lisbon');
//same as IntlCalendar::fromDateTime(new DateTime(...))
$cal1 = IntlCalendar::fromDateTime('2013-02-28 00:01:02 Europe/Berlin');
//Note the timezone is Europe/Berlin, not the default Europe/Lisbon
echo IntlDateFormatter::formatObject($cal1, 'yyyy MMMM d HH:mm:ss VVVV', 'de_DE'), "\n";
The above example will output:
2013 Februar 28 00:01:02 Deutschland Zeit
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Поддержка языков и кодировок
- Internationalization Functions
- Функция IntlCalendar::add() - Add a (signed) amount of time to a field
- Функция IntlCalendar::after() - Whether this objectʼs time is after that of the passed object
- Функция IntlCalendar::before() - Whether this objectʼs time is before that of the passed object
- Функция IntlCalendar::clear() - Clear a field or all fields
- Функция IntlCalendar::__construct() - Private constructor for disallowing instantiation
- Функция IntlCalendar::createInstance() - Create a new IntlCalendar
- Функция IntlCalendar::equals() - Compare time of two IntlCalendar objects for equality
- Функция IntlCalendar::fieldDifference() - Calculate difference between given time and this objectʼs time
- Функция IntlCalendar::fromDateTime() - Create an IntlCalendar from a DateTime object or string
- Функция IntlCalendar::get() - Get the value for a field
- Функция IntlCalendar::getActualMaximum() - The maximum value for a field, considering the objectʼs current time
- Функция IntlCalendar::getActualMinimum() - The minimum value for a field, considering the objectʼs current time
- Функция IntlCalendar::getAvailableLocales() - Get array of locales for which there is data
- Функция IntlCalendar::getDayOfWeekType() - Tell whether a day is a weekday, weekend or a day that has a transition between the two
- Функция IntlCalendar::getErrorCode() - Get last error code on the object
- Функция IntlCalendar::getErrorMessage() - Get last error message on the object
- Функция IntlCalendar::getFirstDayOfWeek() - Get the first day of the week for the calendarʼs locale
- Функция IntlCalendar::getGreatestMinimum() - Get the largest local minimum value for a field
- Функция IntlCalendar::getKeywordValuesForLocale() - Get set of locale keyword values
- Функция IntlCalendar::getLeastMaximum() - Get the smallest local maximum for a field
- Функция IntlCalendar::getLocale() - Get the locale associated with the object
- Функция IntlCalendar::getMaximum() - Get the global maximum value for a field
- Функция IntlCalendar::getMinimalDaysInFirstWeek() - Get minimal number of days the first week in a year or month can have
- Функция IntlCalendar::getMinimum() - Get the global minimum value for a field
- Функция IntlCalendar::getNow() - Get number representing the current time
- Функция IntlCalendar::getRepeatedWallTimeOption() - Get behavior for handling repeating wall time
- Функция IntlCalendar::getSkippedWallTimeOption() - Get behavior for handling skipped wall time
- Функция IntlCalendar::getTime() - Get time currently represented by the object
- Функция IntlCalendar::getTimeZone() - Get the objectʼs timezone
- Функция IntlCalendar::getType() - Get the calendar type
- Функция IntlCalendar::getWeekendTransition() - Get time of the day at which weekend begins or ends
- Функция IntlCalendar::inDaylightTime() - Whether the objectʼs time is in Daylight Savings Time
- Функция IntlCalendar::isEquivalentTo() - Whether another calendar is equal but for a different time
- Функция IntlCalendar::isLenient() - Whether date/time interpretation is in lenient mode
- Функция IntlCalendar::isSet() - Whether a field is set
- Функция IntlCalendar::isWeekend() - Whether a certain date/time is in the weekend
- Функция IntlCalendar::roll() - Add value to field without carrying into more significant fields
- Функция IntlCalendar::set() - Set a time field or several common fields at once
- Функция IntlCalendar::setFirstDayOfWeek() - Set the day on which the week is deemed to start
- Функция IntlCalendar::setLenient() - Set whether date/time interpretation is to be lenient
- Функция IntlCalendar::setMinimalDaysInFirstWeek() - Set minimal number of days the first week in a year or month can have
- Функция IntlCalendar::setRepeatedWallTimeOption() - Set behavior for handling repeating wall times at negative timezone offset transitions
- Функция IntlCalendar::setSkippedWallTimeOption() - Set behavior for handling skipped wall times at positive timezone offset transitions
- Функция IntlCalendar::setTime() - Set the calendar time in milliseconds since the epoch
- Функция IntlCalendar::setTimeZone() - Set the timezone used by this calendar
- Функция IntlCalendar::toDateTime() - Convert an IntlCalendar into a DateTime object
Коментарии
Don't forget that fromDateTime() doesn't set any locale and that the default one will be set. In my case it was en_US_POSIX.
If you wan't to create a IntlCalendar object containing the values of a DateTime object with your locale, use createInstance() instead and do a
<?php
$intlCalendar->setTime($dateTime->getTimestamp() * 1000);
?>
IntlCalendar works with milliseconds so you need to multiply the timestamp with 1000.
Using fromDateTime() can cause unwanted behaviour like getFirstDayOfWeek() returning a wrong integer.