diff options
author | Iban Eguia <admin@razican.com> | 2012-06-09 23:52:27 +0200 |
---|---|---|
committer | Iban Eguia <admin@razican.com> | 2012-06-09 23:52:27 +0200 |
commit | e15e3dde9dca15e2d65f098010d3fb7004cef5e7 (patch) | |
tree | 26f06c9c26bbb2f54ae37727b6a6e549163f1d93 | |
parent | f5d1fd2ce8bfa049c8049184ac6d385d0f70fe29 (diff) |
Fixed timezone change in index.php
Now it does not ever change the local timezone, and it adds the option to get the 'local' time()
-rw-r--r-- | index.php | 2 | ||||
-rw-r--r-- | system/helpers/date_helper.php | 14 | ||||
-rw-r--r-- | user_guide_src/source/helpers/date_helper.rst | 3 | ||||
-rw-r--r-- | user_guide_src/source/installation/upgrade_300.rst | 3 |
4 files changed, 14 insertions, 8 deletions
@@ -162,8 +162,6 @@ if (defined('ENVIRONMENT')) // END OF USER CONFIGURABLE SETTINGS. DO NOT EDIT BELOW THIS LINE // -------------------------------------------------------------------- -date_default_timezone_set('UTC'); - /* * --------------------------------------------------------------- * Resolve the system path for increased reliability diff --git a/system/helpers/date_helper.php b/system/helpers/date_helper.php index 3b0c3289d..d5acec23f 100644 --- a/system/helpers/date_helper.php +++ b/system/helpers/date_helper.php @@ -57,10 +57,16 @@ if ( ! function_exists('now')) $timezone = $CI->config->item('timezone'); } - $timezone = new DateTimeZone($timezone); - $now = new DateTime('now', $timezone); - $offset = $timezone->getOffset($now); - $time = time() + $offset; + $time = time(); + if(strtolower($timezone) != 'local') + { + $local = new DateTime(NULL, new DateTimeZone(date_default_timezone_get())); + $now = new DateTime(NULL, new DateTimeZone($timezone)); + $lcl_offset = $local->getOffset(); + $tz_offset = $now->getOffset(); + $offset = $tz_offset - $lcl_offset; + $time = $time + $offset; + } return $time; } diff --git a/user_guide_src/source/helpers/date_helper.rst b/user_guide_src/source/helpers/date_helper.rst index b6c6ed4bb..33b39bd5b 100644 --- a/user_guide_src/source/helpers/date_helper.rst +++ b/user_guide_src/source/helpers/date_helper.rst @@ -21,7 +21,8 @@ now() ===== Returns the current time as a Unix timestamp, based on the "timezone" parameter. -All PHP available timezones are supported. +All PHP available timezones are supported. You can also use 'local' timezone, and +it will return time(). .. php:method:: now($timezone = NULL) diff --git a/user_guide_src/source/installation/upgrade_300.rst b/user_guide_src/source/installation/upgrade_300.rst index e86ef67da..c2c3899ee 100644 --- a/user_guide_src/source/installation/upgrade_300.rst +++ b/user_guide_src/source/installation/upgrade_300.rst @@ -47,7 +47,8 @@ Step 5: Change your use of the Date helper's now() function Function now() has been modified. You can see the changes in :doc:`Date Helper <../helpers/date_helper>` You must replace $config['time_reference'] with $config['timezone'] in your config.php file. You can select all -PHP supported timezones, listed here: `PHP's supported timezones <http://www.php.net/timezones>`_. +PHP supported timezones, listed here: `Supported timezones <http://www.php.net/timezones>`_. You can also +use 'local' if you want to get time(). Step 6: Move your errors folder =============================== |