function ut_main() { $locale_arr = array('en_US_CA'); $datetype_arr = array(IntlDateFormatter::FULL, IntlDateFormatter::LONG, IntlDateFormatter::MEDIUM); $res_str = ''; $text_arr = array("Thursday, December 18, 1969 8:49:59 AM PST", "June 18, 1969 8:49:59 AM ", "12/18/69 8:49 AM", "19691218 08:49 AM"); $fmt1 = ut_datefmt_create('en_US_CA', IntlDateFormatter::LONG, IntlDateFormatter::LONG); $fmt2 = ut_datefmt_create('en_US_CA', IntlDateFormatter::MEDIUM, IntlDateFormatter::MEDIUM); $fmt3 = ut_datefmt_create('en_US_CA', IntlDateFormatter::FULL, IntlDateFormatter::FULL); $fmt_array = array($fmt1, $fmt2, $fmt3); $fmt_desc_array = array("DateType::LONG, TimeType::LONG", "DateType::MEDIUM, TimeType::MEDIUM", "DateType::FULL, TimeType::FULL"); foreach ($text_arr as $text_entry) { $res_str .= "\n-------------------------------\n"; $res_str .= "\nInput text is : {$text_entry}"; $cnt = 0; foreach ($fmt_array as $fmt_entry) { $res_str .= "\n------------"; $res_str .= "\nIntlDateFormatter : " . $fmt_desc_array[$cnt]; $cnt++; $parsed_arr = ut_datefmt_localtime($fmt_entry, $text_entry); if ($parsed_arr) { $res_str .= "\n"; foreach ($parsed_arr as $key => $value) { $res_str .= "{$key} : '{$value}' , "; } } else { //$res_str .= "No values found from LocaleTime parsing."; $res_str .= "\tError : '" . intl_get_error_message() . "'"; } } } return $res_str; }
function ut_main() { $locale_arr = array('en_US_CA'); $datetype_arr = array(IntlDateFormatter::FULL, IntlDateFormatter::LONG, IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, IntlDateFormatter::NONE); $res_str = ''; $text_arr = array("Sunday, September 18, 3039 4:06:40 PM PT", "Thursday, December 18, 1969 8:49:59 AM PST", "12/18/69 8:49 AM", "20111218 08:49 AM", "19691218 08:49 AM"); foreach ($text_arr as $text_entry) { $res_str .= "\n------------\n"; $res_str .= "\nInput text is : {$text_entry}"; $res_str .= "\n------------"; foreach ($locale_arr as $locale_entry) { $res_str .= "\nLocale is : {$locale_entry}"; $res_str .= "\n------------"; foreach ($datetype_arr as $datetype_entry) { $res_str .= "\ndatetype = {$datetype_entry} ,timetype ={$datetype_entry}"; $fmt = ut_datefmt_create($locale_entry, $datetype_entry, $datetype_entry); $pos = 0; $parsed = ut_datefmt_parse($fmt, $text_entry, $pos); if (intl_get_error_code() == U_ZERO_ERROR) { $res_str .= "\nParsed text is : {$parsed}; Position = {$pos}"; } else { $res_str .= "\nError while parsing as: '" . intl_get_error_message() . "'; Position = {$pos}"; } } } } $res_str .= "\n"; return $res_str; }
function ut_main() { $timetype_arr = array(IntlDateFormatter::FULL, IntlDateFormatter::LONG, IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, IntlDateFormatter::NONE); $res_str = ''; foreach ($timetype_arr as $timetype_entry) { $res_str .= "\nCreating IntlDateFormatter with time_type = {$timetype_entry}"; $fmt = ut_datefmt_create("de-DE", IntlDateFormatter::SHORT, $timetype_entry, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN); $time_type = ut_datefmt_get_timetype($fmt); $res_str .= "\nAfter call to get_timetype : timetype= {$time_type}"; $res_str .= "\n"; } return $res_str; }
function ut_main() { $timezone_id_arr = array('America/New_York', 'US/Pacific', 'US/Central'); $res_str = ''; foreach ($timezone_id_arr as $timezone_id_entry) { $res_str .= "\nCreating IntlDateFormatter with timezone_id = {$timezone_id_entry}"; $fmt = ut_datefmt_create("de-DE", IntlDateFormatter::SHORT, IntlDateFormatter::SHORT, $timezone_id_entry, IntlDateFormatter::GREGORIAN); $timezone_id = ut_datefmt_get_timezone_id($fmt); $res_str .= "\nAfter call to get_timezone_id : timezone_id= {$timezone_id}"; $res_str .= "\n"; } return $res_str; }
function ut_main() { $res_str = ''; //Create $fmt = ut_datefmt_create("en-US", IntlDateFormatter::SHORT, IntlDateFormatter::SHORT, 'America/New_York', IntlDateFormatter::GREGORIAN); $res_str .= "\nIntlDateFormatter Created.\n"; $resLenient1 = ut_datefmt_is_lenient($fmt); $res_str .= "After call to get_lenient : lenient= "; if ($resLenient1) { $res_str .= "TRUE\n"; } else { $res_str .= "FALSE\n"; } //Set and test $res_str .= "--------------------\n"; $isLenient = TRUE; $res_str .= "Setting IntlDateFormatter with lenient = "; if ($isLenient) { $res_str .= "TRUE\n"; } else { $res_str .= "FALSE\n"; } ut_datefmt_set_lenient($fmt, $isLenient); $resLenient = ut_datefmt_is_lenient($fmt); $res_str .= "After call to is_lenient : lenient= "; if ($resLenient) { $res_str .= "TRUE\n"; } else { $res_str .= "FALSE\n"; } //Set and test $res_str .= "--------------------\n"; $isLenient = FALSE; $res_str .= "Setting IntlDateFormatter with lenient ="; if ($isLenient) { $res_str .= "TRUE\n"; } else { $res_str .= "FALSE\n"; } ut_datefmt_set_lenient($fmt, $isLenient); $resLenient = ut_datefmt_is_lenient($fmt); $res_str .= "After call to is_lenient : lenient= "; if ($resLenient) { $res_str .= "TRUE\n"; } else { $res_str .= "FALSE\n"; } $res_str .= "--------------------\n"; return $res_str; }
function ut_main() { $locale_arr = array('en_US_CA'); $datetype_arr = array(IntlDateFormatter::FULL, IntlDateFormatter::LONG, IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, IntlDateFormatter::NONE); $res_str = ''; $text_arr = array(array("Sunday, September 18, 2039 4:06:40 PM PT", IntlDateFormatter::FULL, IntlDateFormatter::FULL), array("Wednesday, December 17, 1969 6:40:00 PM PT", IntlDateFormatter::FULL, IntlDateFormatter::FULL), array("Thursday, December 18, 1969 8:49:59 PM PST", IntlDateFormatter::FULL, IntlDateFormatter::FULL), array("December 18, 1969 8:49:59 AM PST", IntlDateFormatter::LONG, IntlDateFormatter::FULL), array("12/18/69 8:49 AM", IntlDateFormatter::SHORT, IntlDateFormatter::SHORT), array("19691218 08:49 AM", IntlDateFormatter::SHORT, IntlDateFormatter::SHORT), array("Sunday, September 18, 2039 4:06:40 PM PT", IntlDateFormatter::FULL, IntlDateFormatter::NONE), array("Sunday, September 18, 2039 4:06:40 PM PT", IntlDateFormatter::FULL, IntlDateFormatter::SHORT), array("December 18, 1969 8:49:59 AM PST", IntlDateFormatter::LONG, IntlDateFormatter::NONE), array("December 18, 1969 8:49:59 AM PST", IntlDateFormatter::LONG, IntlDateFormatter::SHORT), array("12/18/69 8:49 AM", IntlDateFormatter::SHORT, IntlDateFormatter::LONG), array("19691218 08:49 AM", IntlDateFormatter::SHORT, IntlDateFormatter::LONG)); foreach ($text_arr as $text_entry) { $fmt = ut_datefmt_create('en_US_CA', $text_entry[1], $text_entry[2]); $parse_pos = 0; $parsed = ut_datefmt_parse($fmt, $text_entry[0], $parse_pos); $res_str .= "\nInput text : {$text_entry[0]} ; DF = {$text_entry[1]}; TF = {$text_entry[2]}"; if (intl_get_error_code() != U_ZERO_ERROR) { $res_str .= "\nError : " . intl_get_error_message(); } $res_str .= "\nParsed: {$parsed}; parse_pos : {$parse_pos}\n"; } return $res_str; }
function ut_main() { $locale_arr = array('de-DE', 'sl-IT-nedis', 'en_UK', 'hi'); $res_str = ''; foreach ($locale_arr as $locale_entry) { $res_str .= "\nCreating IntlDateFormatter with locale = {$locale_entry}"; $fmt = ut_datefmt_create($locale_entry, IntlDateFormatter::SHORT, IntlDateFormatter::SHORT, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN); $locale = ut_datefmt_get_locale($fmt, 1); $res_str .= "\nAfter call to get_locale : locale= {$locale}"; $res_str .= "\n"; } $badvals = array(100, -1, 4294901761); foreach ($badvals as $badval) { if (ut_datefmt_get_locale($fmt, $badval)) { $res_str .= "datefmt_get_locale should return false for bad argument {$badval}\n"; } } return $res_str; }
function ut_main() { $timezone_id_arr = array('America/New_York', 'America/Los_Angeles', 'America/Chicago', 'CN'); $timestamp_entry = 0; $res_str = ''; $fmt = ut_datefmt_create("en_US", IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/San_Francisco', IntlDateFormatter::GREGORIAN); $timezone_id = ut_datefmt_get_timezone_id($fmt); $res_str .= "\nAfter creation of the dateformatter : timezone_id= {$timezone_id}\n"; foreach ($timezone_id_arr as $timezone_id_entry) { $res_str .= "-----------"; $res_str .= "\nTrying to set timezone_id= {$timezone_id_entry}"; ut_datefmt_set_timezone_id($fmt, $timezone_id_entry); $timezone_id = ut_datefmt_get_timezone_id($fmt); $res_str .= "\nAfter call to set_timezone_id : timezone_id= {$timezone_id}"; $formatted = ut_datefmt_format($fmt, 0); $res_str .= "\nFormatting timestamp=0 resulted in {$formatted}"; $formatted = ut_datefmt_format($fmt, 3600); $res_str .= "\nFormatting timestamp=3600 resulted in {$formatted}"; $res_str .= "\n"; } return $res_str; }
function ut_main() { $pattern_arr = array('DD-MM-YYYY hh:mm:ss', 'yyyy-DDD.hh:mm:ss z', "yyyy/MM/dd", "yyyyMMdd"); $res_str = ''; $start_pattern = 'dd-MM-YY'; $res_str .= "\nCreating IntlDateFormatter with pattern = {$start_pattern} "; //$fmt = ut_datefmt_create( "en-US", IntlDateFormatter::SHORT, IntlDateFormatter::SHORT , 'America/New_York', IntlDateFormatter::GREGORIAN , $start_pattern ); $fmt = ut_datefmt_create("en-US", IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/New_York', IntlDateFormatter::GREGORIAN, $start_pattern); $pattern = ut_datefmt_get_pattern($fmt); $res_str .= "\nAfter call to get_pattern : pattern= {$pattern}"; $formatted = ut_datefmt_format($fmt, 0); $res_str .= "\nResult of formatting timestamp=0 is : \n{$formatted}"; foreach ($pattern_arr as $pattern_entry) { $res_str .= "\n-------------------"; $res_str .= "\nSetting IntlDateFormatter with pattern = {$pattern_entry} "; ut_datefmt_set_pattern($fmt, $pattern_entry); $pattern = ut_datefmt_get_pattern($fmt); $res_str .= "\nAfter call to get_pattern : pattern= {$pattern}"; $formatted = ut_datefmt_format($fmt, 0); $res_str .= "\nResult of formatting timestamp=0 with the new pattern is : \n{$formatted}"; $res_str .= "\n"; } return $res_str; }
<?php include_once 'ut_common.inc'; $GLOBALS['oo-mode'] = true; $res_str = ''; /* * Clone */ $start_pattern = 'dd-MM-YY'; $fmt = ut_datefmt_create("en-US", IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/New_York', IntlDateFormatter::GREGORIAN, $start_pattern); $formatted = ut_datefmt_format($fmt, 0); $res_str .= "\nResult of formatting timestamp=0 is : \n{$formatted}"; $fmt_clone = clone $fmt; ut_datefmt_set_pattern($fmt, 'yyyy-DDD.hh:mm:ss z'); $formatted = ut_datefmt_format($fmt, 0); $res_str .= "\nResult of formatting timestamp=0 is : \n{$formatted}"; $formatted = ut_datefmt_format($fmt_clone, 0); $res_str .= "\nResult of clone formatting timestamp=0 is : \n{$formatted}"; echo $res_str;
function ut_main() { $timezone = 'GMT+05:00'; $locale_arr = array('en_US'); $datetype_arr = array(IntlDateFormatter::FULL, IntlDateFormatter::LONG, IntlDateFormatter::MEDIUM); $res_str = ''; $time_arr = array(0, -1200000, 1200000, 2200000000, -2200000000, 90099999, 3600, -3600); $localtime_arr1 = array('tm_sec' => 24, 'tm_min' => 3, 'tm_hour' => 19, 'tm_mday' => 3, 'tm_mon' => 3, 'tm_year' => 105); $localtime_arr2 = array('tm_sec' => 21, 'tm_min' => 5, 'tm_hour' => 7, 'tm_mday' => 13, 'tm_mon' => 7, 'tm_year' => 205); $localtime_arr3 = array('tm_sec' => 11, 'tm_min' => 13, 'tm_hour' => 0, 'tm_mday' => 17, 'tm_mon' => 11, 'tm_year' => -5); $localtime_arr = array($localtime_arr1, $localtime_arr2, $localtime_arr3); //Test format and parse with a timestamp : long foreach ($time_arr as $timestamp_entry) { $res_str .= "\n------------\n"; $res_str .= "\nInput timestamp is : {$timestamp_entry}"; $res_str .= "\n------------\n"; foreach ($locale_arr as $locale_entry) { foreach ($datetype_arr as $datetype_entry) { $res_str .= "\nIntlDateFormatter locale= {$locale_entry} ,datetype = {$datetype_entry} ,timetype ={$datetype_entry} "; $fmt = ut_datefmt_create($locale_entry, $datetype_entry, $datetype_entry, $timezone); $formatted = ut_datefmt_format($fmt, $timestamp_entry); $res_str .= "\nFormatted timestamp is : {$formatted}"; $parsed = ut_datefmt_parse($fmt, $formatted); if (intl_get_error_code() == U_ZERO_ERROR) { $res_str .= "\nParsed timestamp is : {$parsed}"; } else { $res_str .= "\nError while parsing as: '" . intl_get_error_message() . "'"; } } } } //Test format and parse with a localtime :array foreach ($localtime_arr as $localtime_entry) { $res_str .= "\n------------\n"; $res_str .= "\nInput localtime is : "; foreach ($localtime_entry as $key => $value) { $res_str .= "{$key} : '{$value}' , "; } $res_str .= "\n------------\n"; foreach ($locale_arr as $locale_entry) { foreach ($datetype_arr as $datetype_entry) { $res_str .= "\nIntlDateFormatter locale= {$locale_entry} ,datetype = {$datetype_entry} ,timetype ={$datetype_entry} "; $fmt = ut_datefmt_create($locale_entry, $datetype_entry, $datetype_entry, $timezone); $formatted1 = ut_datefmt_format($fmt, $localtime_entry); if (intl_get_error_code() == U_ZERO_ERROR) { $res_str .= "\nFormatted localtime_array is : {$formatted1}"; } else { $res_str .= "\nError while formatting as: '" . intl_get_error_message() . "'"; } //Parsing $parsed_arr = ut_datefmt_localtime($fmt, $formatted1); if ($parsed_arr) { $res_str .= "\nParsed array is: "; foreach ($parsed_arr as $key => $value) { $res_str .= "{$key} : '{$value}' , "; } } /* else{ //$res_str .= "No values found from LocaleTime parsing."; $res_str .= "\tError : '".intl_get_error_message()."'"; } */ } } } return $res_str; }
function ut_main() { $timezone = 'GMT-10:00'; $locale_arr = array('en_US'); $datetype_arr = array(IntlDateFormatter::FULL, IntlDateFormatter::LONG, IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, IntlDateFormatter::NONE); $res_str = ''; $time_arr = array(0, -1200000, 1200000, 2200000000.0, -2200000000.0, 90099999, 3600, -3600); $localtime_arr1 = array('tm_sec' => 24, 'tm_min' => 3, 'tm_hour' => 19, 'tm_mday' => 3, 'tm_mon' => 3, 'tm_year' => 105); $localtime_arr2 = array('tm_sec' => 21, 'tm_min' => 5, 'tm_hour' => 7, 'tm_mday' => 13, 'tm_mon' => 4, 'tm_year' => 205); $localtime_arr3 = array('tm_sec' => 11, 'tm_min' => 13, 'tm_hour' => 0, 'tm_mday' => 17, 'tm_mon' => 11, 'tm_year' => -5); $localtime_arr = array($localtime_arr1, $localtime_arr2, $localtime_arr3); $d1 = new DateTime("2010-01-01 01:02:03", new DateTimeZone("UTC")); $d2 = new DateTime("2000-12-31 03:04:05", new DateTimeZone("UTC")); $d2->setTimezone(new DateTimeZone("PDT")); $dates = array($d1, $d2, new StdClass()); //Test format with input as a timestamp : integer foreach ($time_arr as $timestamp_entry) { $res_str .= "\n------------\n"; $res_str .= "\nInput timestamp is : {$timestamp_entry}"; $res_str .= "\n------------\n"; foreach ($locale_arr as $locale_entry) { foreach ($datetype_arr as $datetype_entry) { $res_str .= "\nIntlDateFormatter locale= {$locale_entry} ,datetype = {$datetype_entry} ,timetype ={$datetype_entry} "; $fmt = ut_datefmt_create($locale_entry, $datetype_entry, $datetype_entry, $timezone, IntlDateFormatter::GREGORIAN); $formatted = ut_datefmt_format($fmt, $timestamp_entry); $res_str .= "\nFormatted timestamp is : {$formatted}"; } } } //Test format with input as a localtime :array foreach ($localtime_arr as $localtime_entry) { $res_str .= "\n------------\n"; $res_str .= "\nInput localtime is : "; foreach ($localtime_entry as $key => $value) { $res_str .= "{$key} : '{$value}' , "; } $res_str .= "\n------------\n"; foreach ($locale_arr as $locale_entry) { foreach ($datetype_arr as $datetype_entry) { $res_str .= "\nIntlDateFormatter locale= {$locale_entry} ,datetype = {$datetype_entry} ,timetype ={$datetype_entry} "; $fmt = ut_datefmt_create($locale_entry, $datetype_entry, $datetype_entry, $timezone, IntlDateFormatter::GREGORIAN); $formatted1 = ut_datefmt_format($fmt, $localtime_entry); if (intl_get_error_code() == U_ZERO_ERROR) { $res_str .= "\nFormatted localtime_array is : {$formatted1}"; } else { $res_str .= "\nError while formatting as: '" . intl_get_error_message() . "'"; } } } } foreach ($dates as $date_entry) { foreach ($locale_arr as $locale_entry) { foreach ($datetype_arr as $datetype_entry) { $res_str .= "\n------------"; $res_str .= "\nDate is: " . var_export($date_entry, true); $res_str .= "\n------------"; $fmt = ut_datefmt_create($locale_entry, $datetype_entry, $datetype_entry, $timezone, IntlDateFormatter::GREGORIAN); $formatted1 = ut_datefmt_format($fmt, $date_entry); if (intl_get_error_code() == U_ZERO_ERROR) { $res_str .= "\nFormatted DateTime is : {$formatted1}"; } else { $res_str .= "\nError while formatting as: '" . intl_get_error_message() . "'"; } } } } return $res_str; }