<?php ini_set("intl.error_level", E_WARNING); ini_set("intl.default_locale", "pt_PT"); ini_set("date.timezone", "Europe/Lisbon"); $cal = IntlCalendar::fromDateTime('2012-01-01 00:00:00'); //Europe/Lisbon echo IntlDateFormatter::formatObject($cal), "\n"; echo IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL), "\n"; echo IntlDateFormatter::formatObject($cal, null, "en-US"), "\n"; echo IntlDateFormatter::formatObject($cal, array(IntlDateFormatter::SHORT, IntlDateFormatter::FULL), "en-US"), "\n"; echo IntlDateFormatter::formatObject($cal, 'E y-MM-d HH,mm,ss.SSS v', "en-US"), "\n"; $cal = IntlCalendar::fromDateTime('2012-01-01 05:00:00+03:00'); echo datefmt_format_object($cal, IntlDateFormatter::FULL), "\n"; $cal = IntlCalendar::createInstance(null, 'en-US@calendar=islamic-civil'); $cal->setTime(strtotime('2012-01-01 00:00:00') * 1000.0); echo IntlDateFormatter::formatObject($cal), "\n"; echo IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL, "en-US"), "\n"; ?> ==DONE==
public function it_should_convert_intl_gregorian_calendar() { if (!class_exists('\\IntlCalendar')) { return; } $this::import(\IntlCalendar::fromDateTime(date_create()))->shouldHaveType('Danhunsaker\\Calends\\Calends'); $this->convert('IntlGregorianCalendar')->shouldHaveKey('duration'); }
/** * @return array */ public function dataProviderFormatObject() { $date = new \DateTime('2013-06-06 17:05:06 Europe/Dublin'); $calendar = \IntlCalendar::fromDateTime('2013-06-06 17:05:06 Europe/Dublin'); return [[$date, null, null], [$date, \IntlDateFormatter::FULL, null], [$date, null, 'en-US'], [$date, [\IntlDateFormatter::SHORT, \IntlDateFormatter::FULL], 'en-US'], [$date, 'E y-MM-d HH,mm,ss.SSS v', 'en-US'], [$date, [\IntlDateFormatter::NONE, \IntlDateFormatter::FULL], null], [$date, "d 'of' MMMM y", 'en_US'], [new \DateTime('2013-09-09 09:09:09 Europe/Madrid'), \IntlDateFormatter::FULL, 'es_ES'], [new \DateTime('2013-09-09 09:09:09 -01:00'), null, null], [new \DateTime('2013-09-09 09:09:09 +01:00'), null, null], [$calendar, null, null], [$calendar, \IntlDateFormatter::FULL, null], [$calendar, null, 'en-US'], [$calendar, [\IntlDateFormatter::SHORT, \IntlDateFormatter::FULL], 'en-US'], [$calendar, 'E y-MM-d HH,mm,ss.SSS v', 'en-US'], [$calendar, [\IntlDateFormatter::NONE, \IntlDateFormatter::FULL], null], [$calendar, "d 'of' MMMM y", 'en_US'], [\IntlCalendar::fromDateTime('2013-09-09 09:09:09 Europe/Madrid'), \IntlDateFormatter::FULL, 'es_ES'], [\IntlCalendar::fromDateTime('2013-09-09 09:09:09 -01:00'), null, null], [\IntlCalendar::fromDateTime('2013-09-09 09:09:09 +01:00'), null, null]]; }
<?php ini_set("intl.error_level", E_WARNING); ini_set("intl.default_locale", "nl"); date_default_timezone_set('Europe/Lisbon'); var_dump(IntlCalendar::fromDateTime()); var_dump(IntlCalendar::fromDateTime(0, 1, 2)); try { IntlCalendar::fromDateTime("foobar"); } catch (Exception $e) { echo "threw exception, OK"; } class A extends DateTime { function __construct() { } } var_dump(IntlCalendar::fromDateTime(new A())); $date = new DateTime('2012-01-01 00:00:00 +24:00'); var_dump(IntlCalendar::fromDateTime($date)); $date = new DateTime('2012-01-01 00:00:00 WEST'); var_dump(IntlCalendar::fromDateTime($date)); var_dump(intlcal_from_date_time());
<?php ini_set("intl.error_level", E_WARNING); ini_set("intl.default_locale", "nl_NL"); date_default_timezone_set('Europe/Lisbon'); $cal = IntlCalendar::fromDateTime('2012-01-01 00:00:00 Europe/Rome'); var_dump($cal->getTime(), strtotime('2012-01-01 00:00:00 Europe/Rome') * 1000.0, $cal->getTimeZone()->getID(), $cal->getLocale(1)); echo "\n"; $cal = IntlCalendar::fromDateTime(new DateTime('2012-01-01 00:00:00 PST'), "pt_PT"); var_dump($cal->getTime(), strtotime('2012-01-01 00:00:00 PST') * 1000.0, $cal->getTimeZone()->getID(), $cal->getLocale(1)); echo "\n"; $cal = intlcal_from_date_time(new DateTime('2012-01-01 00:00:00 +03:40')); var_dump($cal->getTime(), strtotime('2012-01-01 00:00:00 +03:40') * 1000.0, $cal->getTimeZone()->getID());