summaryrefslogtreecommitdiff
path: root/ext/intl/timezone/timezone_class.h
Commit message (Collapse)AuthorAgeFilesLines
* Added IntlDateFormatter::formatObject(). RefactorGustavo André dos Santos Lopes2012-07-221-1/+0
| | | | | | | | | | | | | | | | | | | To better support IntlCalendar, added this function: string IntlDateFormatter::formatObject(IntlCalendar|DateTime $obj [, array|int|string $format = null [, string $locale = null). $format is either of the constants IntlDateFormatter::FULL, etc., in which case this format applies to both the date and the time, an array in the form array($dateFormat, $timeFormat), or a string with the SimpleDateFormat pattern. This uses both the Calendar type and the timezone of the passed object to configure the formatter (a GregorianCalendar is forced for DateTime). Some stuff was moved around and slighlt modified to allow for more code reuse.
* Added IntlTimeZone::fromDateTimeZone() and ::toDateTimeZone.Gustavo André dos Santos Lopes2012-05-171-0/+1
| | | | | | | | | | | | | | | | | | | | IntlTimeZone::fromDateTimeZone(DateTimeZone $dtz) converts from an ext/date TimeZone to an IntlTimeZone. The conversion is done by feeding the time zone name (essentially what would be given by DateTimeZone::getName()) to ICU's TimeZone::createTimeZone except if it's an offset time zone. In that case, the offset is read from the ext/date time zone object structure and an appopriate id (of the form GMT<+|-><HH:MM>) is given to ICU's TimeZone::createTimeZone. Not all ext/date time zones are recognized for ICU. For instance, WEST is not. Note that these kind of abbreviations, as far as I can tell, can only be created via ext/date DateTime, not directly through DateTimeZone's constructor. For IntlTimeZone::toDateTimeZone(), the behavior is symmetrical. We instantiate a DateTimeZone and then call its constructor if we don't have an offset time zone, otherwise we mess with its structure. If the timezone is not valid for ext/date, then we allow the exception of DateTimeZone constructor to propagate.
* Accept DateTimeZone where time zones are expected.Gustavo André dos Santos Lopes2012-05-171-1/+2
| | | | | Also unified timezone handling in IntlCalendar::setTimeZone() to that in the IntlCalendar and IntlGregorianCalendar constructors.
* Compatibility with old versions of ICU (4.0+).Gustavo André dos Santos Lopes2012-04-011-0/+3
|
* Initial checkin of calendar/timezone code.Gustavo André dos Santos Lopes2012-04-011-0/+68