summaryrefslogtreecommitdiffstats
path: root/user_guide_src/source/helpers/date_helper.rst
diff options
context:
space:
mode:
Diffstat (limited to 'user_guide_src/source/helpers/date_helper.rst')
-rw-r--r--user_guide_src/source/helpers/date_helper.rst530
1 files changed, 263 insertions, 267 deletions
diff --git a/user_guide_src/source/helpers/date_helper.rst b/user_guide_src/source/helpers/date_helper.rst
index b21d147bd..3a3454edc 100644
--- a/user_guide_src/source/helpers/date_helper.rst
+++ b/user_guide_src/source/helpers/date_helper.rst
@@ -9,9 +9,7 @@ The Date Helper file contains functions that help you work with dates.
Loading this Helper
===================
-This helper is loaded using the following code
-
-::
+This helper is loaded using the following code::
$this->load->helper('date');
@@ -20,36 +18,45 @@ The following functions are available:
now()
=====
-Returns the current time as a Unix timestamp, referenced either to your
-server's local time or GMT, based on the "time reference" setting in
-your config file. If you do not intend to set your master time reference
-to GMT (which you'll typically do if you run a site that lets each user
-set their own timezone settings) there is no benefit to using this
-function over PHP's time() function.
+.. php:function:: now($timezone = NULL)
+
+ :param string $timezone: Timezone
+ :returns: int
-.. php:method:: now()
+Returns the current time as a UNIX timestamp, referenced either to your server's
+local time or any PHP suported timezone, based on the "time reference" setting
+in your config file. If you do not intend to set your master time reference to
+any other PHP supported timezone (which you'll typically do if you run a site
+that lets each user set their own timezone settings) there is no benefit to using
+this function over PHP's ``time()`` function.
+
+::
+
+ echo now('Australia/Victoria');
+
+If a timezone is not provided, it will return ``time()`` based on the
+**time_reference** setting.
mdate()
=======
-This function is identical to PHPs `date() <http://www.php.net/date>`_
+.. php:function:: mdate($datestr = '', $time = '')
+
+ :param string $datestr: Date string
+ :param int $time: UNIX timestamp
+ :returns: int
+
+This function is identical to PHP's `date() <http://www.php.net/date>`_
function, except that it lets you use MySQL style date codes, where each
-code letter is preceded with a percent sign: %Y %m %d etc.
+code letter is preceded with a percent sign, e.g. `%Y %m %d`
The benefit of doing dates this way is that you don't have to worry
about escaping any characters that are not date codes, as you would
-normally have to do with the date() function. Example
+normally have to do with the ``date()`` function.
-.. php:method:: mdate($datestr = '', $time = '')
+Example::
- :param string $datestr: Date String
- :param integer $time: time
- :returns: integer
-
-
-::
-
- $datestring = "Year: %Y Month: %m Day: %d - %h:%i %a";
+ $datestring = 'Year: %Y Month: %m Day: %d - %h:%i %a';
$time = time();
echo mdate($datestring, $time);
@@ -59,87 +66,77 @@ will be used.
standard_date()
===============
-Lets you generate a date string in one of several standardized formats.
-Example
+.. php:function:: standard_date($fmt = 'DATE_RFC822', $time = NULL)
-.. php:method:: standard_date($fmt = 'DATE_RFC822', $time = '')
+ :param string $fmt: Date format
+ :param int $time: UNIX timestamp
+ :returns: string
- :param string $fmt: the chosen format
- :param string $time: Unix timestamp
- :returns: string
+Lets you generate a date string in one of several standardized formats.
-::
+Example::
$format = 'DATE_RFC822';
$time = time();
echo standard_date($format, $time);
-The first parameter must contain the format, the second parameter must
-contain the date as a Unix timestamp.
-
-Supported formats:
-
-+----------------+------------------------+-----------------------------------+
-| Constant | Description | Example |
-+================+========================+===================================+
-| DATE_ATOM | Atom | 2005-08-15T16:13:03+0000 |
-+----------------+------------------------+-----------------------------------+
-| DATE_COOKIE | HTTP Cookies | Sun, 14 Aug 2005 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_ISO8601 | ISO-8601 | 2005-08-14T16:13:03+00:00 |
-+----------------+------------------------+-----------------------------------+
-| DATE_RFC822 | RFC 822 | Sun, 14 Aug 05 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_RFC850 | RFC 850 | Sunday, 14-Aug-05 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_RFC1036 | RFC 1036 | Sunday, 14-Aug-05 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_RFC1123 | RFC 1123 | Sun, 14 Aug 2005 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_RFC2822 | RFC 2822 | Sun, 14 Aug 2005 16:13:03 +0000 |
-+----------------+------------------------+-----------------------------------+
-| DATE_RSS | RSS | Sun, 14 Aug 2005 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_W3C | W3C | 2005-08-14T16:13:03+0000 |
-+----------------+------------------------+-----------------------------------+
-
+.. note:: This function is DEPRECATED.Use the native ``date()`` combined with
+ `DateTime's format constants
+ <http://www.php.net/manual/en/class.datetime.php#datetime.constants.types>`_
+ instead:
+
+ |
+ | echo date(DATE_RFC822, time());
+
+Supported formats
+-----------------
+
+=============== ======================= ======================================
+Constant Description Example
+=============== ======================= ======================================
+DATE_ATOM Atom 2005-08-15T16:13:03+0000
+DATE_COOKIE HTTP Cookies Sun, 14 Aug 2005 16:13:03 UTC
+DATE_ISO8601 ISO-8601 2005-08-14T16:13:03+00:00
+DATE_RFC822 RFC 822 Sun, 14 Aug 05 16:13:03 UTC
+DATE_RFC850 RFC 850 Sunday, 14-Aug-05 16:13:03 UTC
+DATE_RFC1036 RFC 1036 Sunday, 14-Aug-05 16:13:03 UTC
+DATE_RFC1123 RFC 1123 Sun, 14 Aug 2005 16:13:03 UTC
+DATE_RFC2822 RFC 2822 Sun, 14 Aug 2005 16:13:03 +0000
+DATE_RSS RSS Sun, 14 Aug 2005 16:13:03 UTC
+DATE_W3C W3C 2005-08-14T16:13:03+0000
+=============== ======================= ======================================
local_to_gmt()
==============
-Takes a Unix timestamp as input and returns it as GMT.
+.. php:function:: local_to_gmt($time = '')
-.. php:method:: local_to_gmt($time = '')
+ :param int $time: UNIX timestamp
+ :returns: string
- :param integer $time: Unix timestamp
- :returns: string
+Takes a UNIX timestamp as input and returns it as GMT.
-Example:
+Example::
-::
-
- $now = time();
- $gmt = local_to_gmt($now);
+ $gmt = local_to_gmt(time());
gmt_to_local()
==============
-Takes a Unix timestamp (referenced to GMT) as input, and converts it to
-a localized timestamp based on the timezone and Daylight Saving time
-submitted.
+.. php:function:: gmt_to_local($time = '', $timezone = 'UTC', $dst = FALSE)
-.. php:method:: gmt_to_local($time = '', $timezone = 'UTC', $dst = FALSE)
+ :param int $time: UNIX timestamp
+ :param string $timezone: Timezone
+ :param bool $dst: Whether DST is active
+ :returns: int
- :param integer $time: Unix timestamp
- :param string $timezone: timezone
- :param boolean $dst: whether DST is active
- :returns: integer
-
-Example
+Takes a UNIX timestamp (referenced to GMT) as input, and converts it to
+a localized timestamp based on the timezone and Daylight Saving Time
+submitted.
-::
+Example::
- $timestamp = '1140153693';
+ $timestamp = 1140153693;
$timezone = 'UM8';
$daylight_saving = TRUE;
echo gmt_to_local($timestamp, $timezone, $daylight_saving);
@@ -147,40 +144,32 @@ Example
.. note:: For a list of timezones see the reference at the bottom of this page.
-
mysql_to_unix()
===============
-Takes a MySQL Timestamp as input and returns it as Unix.
+.. php:function:: mysql_to_unix($time = '')
-.. php:method:: mysql_to_unix($time = '')
+ :param int $time: UNIX timestamp
+ :returns: int
- :param integer $time: Unix timestamp
- :returns: integer
-
-Example
+Takes a MySQL Timestamp as input and returns it as a UNIX timestamp.
-::
+Example::
- $mysql = '20061124092345';
- $unix = mysql_to_unix($mysql);
+ $unix = mysql_to_unix('20061124092345');
unix_to_human()
===============
-Takes a Unix timestamp as input and returns it in a human readable
-format with this prototype
+.. php:function:: unix_to_human($time = '', $seconds = FALSE, $fmt = 'us')
-.. php:method:: unix_to_human($time = '', $seconds = FALSE, $fmt = 'us')
-
- :param integer $time: Unix timestamp
- :param boolean $seconds: whether to show seconds
- :param string $fmt: format: us or euro
+ :param int $time: UNIX timestamp
+ :param bool $seconds: Whether to show seconds
+ :param string $fmt: format (us or euro)
:returns: integer
-Example
-
-::
+Takes a UNIX timestamp as input and returns it in a human readable
+format with this prototype::
YYYY-MM-DD HH:MM:SS AM/PM
@@ -189,9 +178,9 @@ submission.
The time can be formatted with or without seconds, and it can be set to
European or US format. If only the timestamp is submitted it will return
-the time without seconds formatted for the U.S. Examples
+the time without seconds formatted for the U.S.
-::
+Examples::
$now = time();
echo unix_to_human($now); // U.S. time, no seconds
@@ -201,19 +190,17 @@ the time without seconds formatted for the U.S. Examples
human_to_unix()
===============
-The opposite of the above function. Takes a "human" time as input and
-returns it as Unix. This function is useful if you accept "human"
-formatted dates submitted via a form. Returns FALSE (boolean) if the
-date string passed to it is not formatted as indicated above.
+.. php:function:: human_to_unix($datestr = '')
-.. php:method:: human_to_unix($datestr = '')
-
- :param integer $datestr: Date String
- :returns: integer
+ :param int $datestr: Date string
+ :returns: int UNIX timestamp or FALSE on failure
-Example:
+The opposite of the :php:func:`unix_to_time()` function. Takes a "human"
+time as input and returns it as a UNIX timestamp. This is useful if you
+accept "human" formatted dates submitted via a form. Returns boolean FALSE
+date string passed to it is not formatted as indicated above.
-::
+Example::
$now = time();
$human = unix_to_human($now);
@@ -222,54 +209,54 @@ Example:
nice_date()
===========
+.. php:function:: nice_date($bad_date = '', $format = FALSE)
+
+ :param int $bad_date: The terribly formatted date-like string
+ :param string $format: Date format to return (same as PHP's ``date()`` function)
+ :returns: string
+
This function can take a number poorly-formed date formats and convert
them into something useful. It also accepts well-formed dates.
-The function will return a Unix timestamp by default. You can,
-optionally, pass a format string (the same type as the PHP date function
-accepts) as the second parameter.
+The function will return a UNIX timestamp by default. You can, optionally,
+pass a format string (the same type as the PHP ``date()`` function accepts)
+as the second parameter.
-.. php:method:: nice_date($bad_date = '', $format = FALSE)
+Example::
- :param integer $bad_date: The terribly formatted date-like string
- :param string $format: Date format to return (same as php date function)
- :returns: string
+ $bad_date = '199605';
+ // Should Produce: 1996-05-01
+ $better_date = nice_date($bad_date, 'Y-m-d');
-Example
-
-::
-
- $bad_time = 199605 // Should Produce: 1996-05-01
- $better_time = nice_date($bad_time,'Y-m-d');
- $bad_time = 9-11-2001 // Should Produce: 2001-09-11
- $better_time = nice_date($human,'Y-m-d');
+ $bad_date = '9-11-2001';
+ // Should Produce: 2001-09-11
+ $better_date = nice_date($bad_date, 'Y-m-d');
timespan()
==========
-Formats a unix timestamp so that is appears similar to this
+.. php:function:: timespan($seconds = 1, $time = '', $units = '')
-::
+ :param int $seconds: Number of seconds
+ :param string $time: UNIX timestamp
+ :param int $units: Number of time units to display
+ :returns: string
- 1 Year, 10 Months, 2 Weeks, 5 Days, 10 Hours, 16 Minutes
+Formats a UNIX timestamp so that is appears similar to this::
-The first parameter must contain a Unix timestamp. The second parameter
-must contain a timestamp that is greater that the first timestamp. If
-the second parameter empty, the current time will be used. The third
-parameter is optional and limits the number of time units to display.
-The most common purpose for this function is to show how much time has
-elapsed from some point in time in the past to now.
+ 1 Year, 10 Months, 2 Weeks, 5 Days, 10 Hours, 16 Minutes
-.. php:method:: timespan($seconds = 1, $time = '', $units = '')
+The first parameter must contain a UNIX timestamp.
+The second parameter must contain a timestamp that is greater that the
+first timestamp.
+The thirdparameter is optional and limits the number of time units to display.
- :param integer $seconds: a number of seconds
- :param string $time: Unix timestamp
- :param integer $units: a number of time units to display
- :returns: string
+If the second parameter empty, the current time will be used.
-Example
+The most common purpose for this function is to show how much time has
+elapsed from some point in time in the past to now.
-::
+Example::
$post_date = '1079621429';
$now = time();
@@ -277,89 +264,124 @@ Example
echo timespan($post_date, $now, $units);
.. note:: The text generated by this function is found in the following language
- file: language/<your_lang>/date_lang.php
+ file: `language/<your_lang>/date_lang.php`
days_in_month()
===============
-Returns the number of days in a given month/year. Takes leap years into
-account.
+.. php:function:: days_in_month($month = 0, $year = '')
-.. php:method:: days_in_month($month = 0, $year = '')
+ :param int $month: a numeric month
+ :param int $year: a numeric year
+ :returns: int
- :param integer $month: a numeric month
- :param integer $year: a numeric year
- :returns: integer
+Returns the number of days in a given month/year. Takes leap years into
+account.
-Example
-
-::
+Example::
echo days_in_month(06, 2005);
If the second parameter is empty, the current year will be used.
+date_range()
+============
+
+.. php:function:: date_range($unix_start = '', $mixed = '', $is_unix = TRUE, $format = 'Y-m-d')
+
+ :param int $unix_start: UNIX timestamp of the range start date
+ :param int $mixed: UNIX timestamp of the range end date or interval in days
+ :param bool $is_unix: set to FALSE if $mixed is not a timestamp
+ :param string $format: Output date format, same as in ``date()``
+ :returns: array
+
+Returns a list of dates within a specified period.
+
+Example::
+
+ $range = date_range('2012-01-01', '2012-01-15');
+ echo "First 15 days of 2012:";
+ foreach ($range as $date)
+ {
+ echo $date."\n";
+ }
+
timezones()
===========
+.. php:function:: timezones($tz = '')
+
+ :param string $tz: a numeric timezone
+ :returns: string
+
Takes a timezone reference (for a list of valid timezones, see the
"Timezone Reference" below) and returns the number of hours offset from
UTC.
-.. php:method:: timezones($tz = '')
-
- :param string $tz: a numeric timezone
- :returns: string
-
-Example
-
-::
+Example::
echo timezones('UM5');
-This function is useful when used with `timezone_menu()`.
+This function is useful when used with :php:func:`timezone_menu()`.
timezone_menu()
===============
-Generates a pull-down menu of timezones, like this one:
+.. php:function:: timezone_menu($default = 'UTC', $class = '', $name = 'timezones', $attributes = '')
+
+ :param string $default: Timezone
+ :param string $class: Class name
+ :param string $name: Menu name
+ :param mixed $attributes: HTML attributes
+ :returns: string
+Generates a pull-down menu of timezones, like this one:
.. raw:: html
<form action="#">
<select name="timezones">
- <option value='UM12'>(UTC - 12:00) Enitwetok, Kwajalien</option>
- <option value='UM11'>(UTC - 11:00) Nome, Midway Island, Samoa</option>
- <option value='UM10'>(UTC - 10:00) Hawaii</option>
- <option value='UM9'>(UTC - 9:00) Alaska</option>
- <option value='UM8'>(UTC - 8:00) Pacific Time</option>
- <option value='UM7'>(UTC - 7:00) Mountain Time</option>
- <option value='UM6'>(UTC - 6:00) Central Time, Mexico City</option>
- <option value='UM5'>(UTC - 5:00) Eastern Time, Bogota, Lima, Quito</option>
- <option value='UM4'>(UTC - 4:00) Atlantic Time, Caracas, La Paz</option>
- <option value='UM25'>(UTC - 3:30) Newfoundland</option>
- <option value='UM3'>(UTC - 3:00) Brazil, Buenos Aires, Georgetown, Falkland Is.</option>
- <option value='UM2'>(UTC - 2:00) Mid-Atlantic, Ascention Is., St Helena</option>
- <option value='UM1'>(UTC - 1:00) Azores, Cape Verde Islands</option>
- <option value='UTC' selected='selected'>(UTC) Casablanca, Dublin, Edinburgh, London, Lisbon, Monrovia</option>
- <option value='UP1'>(UTC + 1:00) Berlin, Brussels, Copenhagen, Madrid, Paris, Rome</option>
- <option value='UP2'>(UTC + 2:00) Kaliningrad, South Africa, Warsaw</option>
- <option value='UP3'>(UTC + 3:00) Baghdad, Riyadh, Moscow, Nairobi</option>
- <option value='UP25'>(UTC + 3:30) Tehran</option>
- <option value='UP4'>(UTC + 4:00) Adu Dhabi, Baku, Muscat, Tbilisi</option>
- <option value='UP35'>(UTC + 4:30) Kabul</option>
- <option value='UP5'>(UTC + 5:00) Islamabad, Karachi, Tashkent</option>
- <option value='UP45'>(UTC + 5:30) Bombay, Calcutta, Madras, New Delhi</option>
- <option value='UP6'>(UTC + 6:00) Almaty, Colomba, Dhaka</option>
- <option value='UP7'>(UTC + 7:00) Bangkok, Hanoi, Jakarta</option>
- <option value='UP8'>(UTC + 8:00) Beijing, Hong Kong, Perth, Singapore, Taipei</option>
- <option value='UP9'>(UTC + 9:00) Osaka, Sapporo, Seoul, Tokyo, Yakutsk</option>
- <option value='UP85'>(UTC + 9:30) Adelaide, Darwin</option>
- <option value='UP10'>(UTC + 10:00) Melbourne, Papua New Guinea, Sydney, Vladivostok</option>
- <option value='UP11'>(UTC + 11:00) Magadan, New Caledonia, Solomon Islands</option>
- <option value='UP12'>(UTC + 12:00) Auckland, Wellington, Fiji, Marshall Island</option>
+ <option value='UM12'>(UTC -12:00) Baker/Howland Island</option>
+ <option value='UM11'>(UTC -11:00) Samoa Time Zone, Niue</option>
+ <option value='UM10'>(UTC -10:00) Hawaii-Aleutian Standard Time, Cook Islands, Tahiti</option>
+ <option value='UM95'>(UTC -9:30) Marquesas Islands</option>
+ <option value='UM9'>(UTC -9:00) Alaska Standard Time, Gambier Islands</option>
+ <option value='UM8'>(UTC -8:00) Pacific Standard Time, Clipperton Island</option>
+ <option value='UM7'>(UTC -7:00) Mountain Standard Time</option>
+ <option value='UM6'>(UTC -6:00) Central Standard Time</option>
+ <option value='UM5'>(UTC -5:00) Eastern Standard Time, Western Caribbean Standard Time</option>
+ <option value='UM45'>(UTC -4:30) Venezuelan Standard Time</option>
+ <option value='UM4'>(UTC -4:00) Atlantic Standard Time, Eastern Caribbean Standard Time</option>
+ <option value='UM35'>(UTC -3:30) Newfoundland Standard Time</option>
+ <option value='UM3'>(UTC -3:00) Argentina, Brazil, French Guiana, Uruguay</option>
+ <option value='UM2'>(UTC -2:00) South Georgia/South Sandwich Islands</option>
+ <option value='UM1'>(UTC -1:00) Azores, Cape Verde Islands</option>
+ <option value='UTC' selected='selected'>(UTC) Greenwich Mean Time, Western European Time</option>
+ <option value='UP1'>(UTC +1:00) Central European Time, West Africa Time</option>
+ <option value='UP2'>(UTC +2:00) Central Africa Time, Eastern European Time, Kaliningrad Time</option>
+ <option value='UP3'>(UTC +3:00) Moscow Time, East Africa Time</option>
+ <option value='UP35'>(UTC +3:30) Iran Standard Time</option>
+ <option value='UP4'>(UTC +4:00) Azerbaijan Standard Time, Samara Time</option>
+ <option value='UP45'>(UTC +4:30) Afghanistan</option>
+ <option value='UP5'>(UTC +5:00) Pakistan Standard Time, Yekaterinburg Time</option>
+ <option value='UP55'>(UTC +5:30) Indian Standard Time, Sri Lanka Time</option>
+ <option value='UP575'>(UTC +5:45) Nepal Time</option>
+ <option value='UP6'>(UTC +6:00) Bangladesh Standard Time, Bhutan Time, Omsk Time</option>
+ <option value='UP65'>(UTC +6:30) Cocos Islands, Myanmar</option>
+ <option value='UP7'>(UTC +7:00) Krasnoyarsk Time, Cambodia, Laos, Thailand, Vietnam</option>
+ <option value='UP8'>(UTC +8:00) Australian Western Standard Time, Beijing Time, Irkutsk Time</option>
+ <option value='UP875'>(UTC +8:45) Australian Central Western Standard Time</option>
+ <option value='UP9'>(UTC +9:00) Japan Standard Time, Korea Standard Time, Yakutsk Time</option>
+ <option value='UP95'>(UTC +9:30) Australian Central Standard Time</option>
+ <option value='UP10'>(UTC +10:00) Australian Eastern Standard Time, Vladivostok Time</option>
+ <option value='UP105'>(UTC +10:30) Lord Howe Island</option>
+ <option value='UP11'>(UTC +11:00) Magadan Time, Solomon Islands, Vanuatu</option>
+ <option value='UP115'>(UTC +11:30) Norfolk Island</option>
+ <option value='UP12'>(UTC +12:00) Fiji, Gilbert Islands, Kamchatka Time, New Zealand Standard Time</option>
+ <option value='UP1275'>(UTC +12:45) Chatham Islands Standard Time</option>
+ <option value='UP13'>(UTC +13:00) Phoenix Islands Time, Tonga</option>
+ <option value='UP14'>(UTC +14:00) Line Islands</option>
</select>
</form>
@@ -368,18 +390,7 @@ This menu is useful if you run a membership site in which your users are
allowed to set their local timezone value.
The first parameter lets you set the "selected" state of the menu. For
-example, to set Pacific time as the default you will do this
-
-.. php:method:: timezone_menu($default = 'UTC', $class = "", $name = 'timezones')
-
- :param string $default: timezone
- :param string $class: classname
- :param string $name: menu name
- :returns: string
-
-Example:
-
-::
+example, to set Pacific time as the default you will do this::
echo timezone_menu('UM8');
@@ -387,6 +398,8 @@ Please see the timezone reference below to see the values of this menu.
The second parameter lets you set a CSS class name for the menu.
+The fourth parameter lets you set one or more attributes on the generated select tag.
+
.. note:: The text contained in the menu is found in the following
language file: `language/<your_lang>/date_lang.php`
@@ -396,66 +409,49 @@ Timezone Reference
The following table indicates each timezone and its location.
-+------------+----------------------------------------------------------------+
-| Time Zone | Location |
-+============+================================================================+
-| UM12 | (UTC - 12:00) Enitwetok, Kwajalien |
-+------------+----------------------------------------------------------------+
-| UM11 | (UTC - 11:00) Nome, Midway Island, Samoa |
-+------------+----------------------------------------------------------------+
-| UM10 | (UTC - 10:00) Hawaii |
-+------------+----------------------------------------------------------------+
-| UM9 | (UTC - 9:00) Alaska |
-+------------+----------------------------------------------------------------+
-| UM8 | (UTC - 8:00) Pacific Time |
-+------------+----------------------------------------------------------------+
-| UM7 | (UTC - 7:00) Mountain Time |
-+------------+----------------------------------------------------------------+
-| UM6 | (UTC - 6:00) Central Time, Mexico City |
-+------------+----------------------------------------------------------------+
-| UM5 | (UTC - 5:00) Eastern Time, Bogota, Lima, Quito |
-+------------+----------------------------------------------------------------+
-| UM4 | (UTC - 4:00) Atlantic Time, Caracas, La Paz |
-+------------+----------------------------------------------------------------+
-| UM25 | (UTC - 3:30) Newfoundland |
-+------------+----------------------------------------------------------------+
-| UM3 | (UTC - 3:00) Brazil, Buenos Aires, Georgetown, Falkland Is. |
-+------------+----------------------------------------------------------------+
-| UM2 | (UTC - 2:00) Mid-Atlantic, Ascention Is., St Helena |
-+------------+----------------------------------------------------------------+
-| UM1 | (UTC - 1:00) Azores, Cape Verde Islands |
-+------------+----------------------------------------------------------------+
-| UTC | (UTC) Casablanca, Dublin, Edinburgh, London, Lisbon, Monrovia |
-+------------+----------------------------------------------------------------+
-| UP1 | (UTC + 1:00) Berlin, Brussels, Copenhagen, Madrid, Paris, Rome |
-+------------+----------------------------------------------------------------+
-| UP2 | (UTC + 2:00) Kaliningrad, South Africa, Warsaw |
-+------------+----------------------------------------------------------------+
-| UP3 | (UTC + 3:00) Baghdad, Riyadh, Moscow, Nairobi |
-+------------+----------------------------------------------------------------+
-| UP25 | (UTC + 3:30) Tehran |
-+------------+----------------------------------------------------------------+
-| UP4 | (UTC + 4:00) Adu Dhabi, Baku, Muscat, Tbilisi |
-+------------+----------------------------------------------------------------+
-| UP35 | (UTC + 4:30) Kabul |
-+------------+----------------------------------------------------------------+
-| UP5 | (UTC + 5:00) Islamabad, Karachi, Tashkent |
-+------------+----------------------------------------------------------------+
-| UP45 | (UTC + 5:30) Bombay, Calcutta, Madras, New Delhi |
-+------------+----------------------------------------------------------------+
-| UP6 | (UTC + 6:00) Almaty, Colomba, Dhaka |
-+------------+----------------------------------------------------------------+
-| UP7 | (UTC + 7:00) Bangkok, Hanoi, Jakarta |
-+------------+----------------------------------------------------------------+
-| UP8 | (UTC + 8:00) Beijing, Hong Kong, Perth, Singapore, Taipei |
-+------------+----------------------------------------------------------------+
-| UP9 | (UTC + 9:00) Osaka, Sapporo, Seoul, Tokyo, Yakutsk |
-+------------+----------------------------------------------------------------+
-| UP85 | (UTC + 9:30) Adelaide, Darwin |
-+------------+----------------------------------------------------------------+
-| UP10 | (UTC + 10:00) Melbourne, Papua New Guinea, Sydney, Vladivostok |
-+------------+----------------------------------------------------------------+
-| UP11 | (UTC + 11:00) Magadan, New Caledonia, Solomon Islands |
-+------------+----------------------------------------------------------------+
-| UP12 | (UTC + 12:00) Auckland, Wellington, Fiji, Marshall Island |
-+------------+----------------------------------------------------------------+
+Note some of the location lists have been abridged for clarity and formatting.
+
+=========== =====================================================================
+Time Zone Location
+=========== =====================================================================
+UM2 (UTC - 12:00) Baker/Howland Island
+UM1 (UTC - 11:00) Samoa Time Zone, Niue
+UM0 (UTC - 10:00) Hawaii-Aleutian Standard Time, Cook Islands
+UM95 (UTC - 09:30) Marquesas Islands
+UM9 (UTC - 09:00) Alaska Standard Time, Gambier Islands
+UM8 (UTC - 08:00) Pacific Standard Time, Clipperton Island
+UM7 (UTC - 11:00) Mountain Standard Time
+UM6 (UTC - 06:00) Central Standard Time
+UM5 (UTC - 05:00) Eastern Standard Time, Western Caribbean
+UM45 (UTC - 04:30) Venezuelan Standard Time
+UM4 (UTC - 04:00) Atlantic Standard Time, Eastern Caribbean
+UM35 (UTC - 03:30) Newfoundland Standard Time
+UM3 (UTC - 03:00) Argentina, Brazil, French Guiana, Uruguay
+UM2 (UTC - 02:00) South Georgia/South Sandwich Islands
+UM (UTC -1:00) Azores, Cape Verde Islands
+UTC (UTC) Greenwich Mean Time, Western European Time
+UP1 (UTC +1:00) Central European Time, West Africa Time
+UP2 (UTC +2:00) Central Africa Time, Eastern European Time
+UP3 (UTC +3:00) Moscow Time, East Africa Time
+UP35 (UTC +3:30) Iran Standard Time
+UP4 (UTC +4:00) Azerbaijan Standard Time, Samara Time
+UP45 (UTC +4:30) Afghanistan
+UP5 (UTC +5:00) Pakistan Standard Time, Yekaterinburg Time
+UP55 (UTC +5:30) Indian Standard Time, Sri Lanka Time
+UP575 (UTC +5:45) Nepal Time
+UP6 (UTC +6:00) Bangladesh Standard Time, Bhutan Time, Omsk Time
+UP65 (UTC +6:30) Cocos Islands, Myanmar
+UP7 (UTC +7:00) Krasnoyarsk Time, Cambodia, Laos, Thailand, Vietnam
+UP8 (UTC +8:00) Australian Western Standard Time, Beijing Time
+UP875 (UTC +8:45) Australian Central Western Standard Time
+UP9 (UTC +9:00) Japan Standard Time, Korea Standard Time, Yakutsk
+UP95 (UTC +9:30) Australian Central Standard Time
+UP10 (UTC +10:00) Australian Eastern Standard Time, Vladivostok Time
+UP105 (UTC +10:30) Lord Howe Island
+UP11 (UTC +11:00) Magadan Time, Solomon Islands, Vanuatu
+UP115 (UTC +11:30) Norfolk Island
+UP12 (UTC +12:00) Fiji, Gilbert Islands, Kamchatka, New Zealand
+UP1275 (UTC +12:45) Chatham Islands Standard Time
+UP1 (UTC +13:00) Phoenix Islands Time, Tonga
+UP14 (UTC +14:00) Line Islands
+=========== ===================================================================== \ No newline at end of file