Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?php
2
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4 foldmethod=marker: */
3
 
4
// {{{ Header
5
 
6
/**
7
 * TimeZone representation class, along with time zone information data
8
 *
9
 * PHP versions 4 and 5
10
 *
11
 * LICENSE:
12
 *
13
 * Copyright (c) 1997-2006 Baba Buehler, Pierre-Alain Joye
14
 * All rights reserved.
15
 *
16
 * Redistribution and use in source and binary forms, with or without
17
 * modification, are permitted under the terms of the BSD License.
18
 *
19
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
22
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
23
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
24
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
25
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
26
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
29
 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30
 * POSSIBILITY OF SUCH DAMAGE.
31
 *
32
 * @category   Date and Time
33
 * @package    Date
34
 * @author     Baba Buehler <baba@babaz.com>
35
 * @author     Pierre-Alain Joye <pajoye@php.net>
36
 * @copyright  1997-2006 Baba Buehler, Pierre-Alain Joye
37
 * @license    http://www.opensource.org/licenses/bsd-license.php
38
 *             BSD License
39
 * @version    CVS: $Id: TimeZone.php,v 1.14 2006/11/22 01:03:12 firman Exp $
40
 * @link       http://pear.php.net/package/Date
41
 */
42
 
43
// }}}
44
// {{{ Class: Date_TimeZone
45
 
46
/**
47
 * TimeZone representation class, along with time zone information data
48
 *
49
 * The default timezone is set from the first valid timezone id found
50
 * in one of the following places, in this order:
51
 *   + global $_DATE_TIMEZONE_DEFAULT
52
 *   + system environment variable PHP_TZ
53
 *   + system environment variable TZ
54
 *   + the result of date('T')
55
 *
56
 * If no valid timezone id is found, the default timezone is set to 'UTC'.
57
 * You may also manually set the default timezone by passing a valid id to
58
 * Date_TimeZone::setDefault().
59
 *
60
 * This class includes time zone data (from zoneinfo) in the form of a
61
 * global array, $_DATE_TIMEZONE_DATA.
62
 *
63
 * @author     Baba Buehler <baba@babaz.com>
64
 * @copyright  1997-2006 Baba Buehler, Pierre-Alain Joye
65
 * @license    http://www.opensource.org/licenses/bsd-license.php
66
 *             BSD License
67
 * @version    Release: 1.4.7
68
 * @link       http://pear.php.net/package/Date
69
 */
70
class Date_TimeZone
71
{
72
    // {{{ Properties
73
 
74
    /**
75
     * Time Zone ID of this time zone
76
     * @var string
77
     */
78
    var $id;
79
 
80
    /**
81
     * Long Name of this time zone (ie Central Standard Time)
82
     * @var string
83
     */
84
    var $longname;
85
 
86
    /**
87
     * Short Name of this time zone (ie CST)
88
     * @var string
89
     */
90
    var $shortname;
91
 
92
    /**
93
     * true if this time zone observes daylight savings time
94
     * @var boolean
95
     */
96
    var $hasdst;
97
 
98
    /**
99
     * DST Long Name of this time zone
100
     * @var string
101
     */
102
    var $dstlongname;
103
 
104
    /**
105
     * DST Short Name of this timezone
106
     * @var string
107
     */
108
    var $dstshortname;
109
 
110
    /**
111
     * offset, in milliseconds, of this timezone
112
     * @var int
113
     */
114
    var $offset;
115
 
116
    /**
117
     * System Default Time Zone
118
     * @var object Date_TimeZone
119
     */
120
    var $default;
121
 
122
    // }}}
123
    // {{{ Constructor
124
 
125
    /**
126
     * Constructor
127
     *
128
     * Creates a new Date::TimeZone object, representing the time zone
129
     * specified in $id.  If the supplied ID is invalid, the created
130
     * time zone is UTC.
131
     *
132
     * @access public
133
     * @param string $id the time zone id
134
     * @return object Date_TimeZone the new Date_TimeZone object
135
     */
136
    function Date_TimeZone($id)
137
    {
138
        $_DATE_TIMEZONE_DATA =& $GLOBALS['_DATE_TIMEZONE_DATA'];
139
        if(Date_TimeZone::isValidID($id)) {
140
            $this->id = $id;
141
            $this->longname = $_DATE_TIMEZONE_DATA[$id]['longname'];
142
            $this->shortname = $_DATE_TIMEZONE_DATA[$id]['shortname'];
143
            $this->offset = $_DATE_TIMEZONE_DATA[$id]['offset'];
144
            if($_DATE_TIMEZONE_DATA[$id]['hasdst']) {
145
                $this->hasdst = true;
146
                $this->dstlongname = $_DATE_TIMEZONE_DATA[$id]['dstlongname'];
147
                $this->dstshortname = $_DATE_TIMEZONE_DATA[$id]['dstshortname'];
148
            } else {
149
                $this->hasdst = false;
150
                $this->dstlongname = $this->longname;
151
                $this->dstshortname = $this->shortname;
152
            }
153
        } else {
154
            $this->id = 'UTC';
155
            $this->longname = $_DATE_TIMEZONE_DATA[$this->id]['longname'];
156
            $this->shortname = $_DATE_TIMEZONE_DATA[$this->id]['shortname'];
157
            $this->hasdst = $_DATE_TIMEZONE_DATA[$this->id]['hasdst'];
158
            $this->offset = $_DATE_TIMEZONE_DATA[$this->id]['offset'];
159
        }
160
    }
161
 
162
    // }}}
163
    // {{{ getDefault()
164
 
165
    /**
166
     * Return a TimeZone object representing the system default time zone
167
     *
168
     * Return a TimeZone object representing the system default time zone,
169
     * which is initialized during the loading of TimeZone.php.
170
     *
171
     * @access public
172
     * @return object Date_TimeZone the default time zone
173
     */
174
    function getDefault()
175
    {
176
        return new Date_TimeZone($GLOBALS['_DATE_TIMEZONE_DEFAULT']);
177
    }
178
 
179
    // }}}
180
    // {{{ setDefault()
181
 
182
    /**
183
     * Sets the system default time zone to the time zone in $id
184
     *
185
     * Sets the system default time zone to the time zone in $id
186
     *
187
     * @access public
188
     * @param string $id the time zone id to use
189
     */
190
    function setDefault($id)
191
    {
192
        if(Date_TimeZone::isValidID($id)) {
193
            $GLOBALS['_DATE_TIMEZONE_DEFAULT'] = $id;
194
        }
195
    }
196
 
197
    // }}}
198
    // {{{ isValidID()
199
 
200
    /**
201
     * Tests if given id is represented in the $_DATE_TIMEZONE_DATA time zone data
202
     *
203
     * Tests if given id is represented in the $_DATE_TIMEZONE_DATA time zone data
204
     *
205
     * @access public
206
     * @param string $id the id to test
207
     * @return boolean true if the supplied ID is valid
208
     */
209
    function isValidID($id)
210
    {
211
        if(isset($GLOBALS['_DATE_TIMEZONE_DATA'][$id])) {
212
            return true;
213
        } else {
214
            return false;
215
        }
216
    }
217
 
218
    // }}}
219
    // {{{ isEqual()
220
 
221
    /**
222
     * Is this time zone equal to another
223
     *
224
     * Tests to see if this time zone is equal (ids match)
225
     * to a given Date_TimeZone object.
226
     *
227
     * @access public
228
     * @param object Date_TimeZone $tz the timezone to test
229
     * @return boolean true if this time zone is equal to the supplied time zone
230
     */
231
    function isEqual($tz)
232
    {
233
        if(strcasecmp($this->id, $tz->id) == 0) {
234
            return true;
235
        } else {
236
            return false;
237
        }
238
    }
239
 
240
    // }}}
241
    // {{{ isEquivalent()
242
 
243
    /**
244
     * Is this time zone equivalent to another
245
     *
246
     * Tests to see if this time zone is equivalent to
247
     * a given time zone object.  Equivalence in this context
248
     * is defined by the two time zones having an equal raw
249
     * offset and an equal setting of "hasdst".  This is not true
250
     * equivalence, as the two time zones may have different rules
251
     * for the observance of DST, but this implementation does not
252
     * know DST rules.
253
     *
254
     * @access public
255
     * @param object Date_TimeZone $tz the timezone object to test
256
     * @return boolean true if this time zone is equivalent to the supplied time zone
257
     */
258
    function isEquivalent($tz)
259
    {
260
        if($this->offset == $tz->offset && $this->hasdst == $tz->hasdst) {
261
            return true;
262
        } else {
263
            return false;
264
        }
265
    }
266
 
267
    // }}}
268
    // {{{ hasDaylightTime()
269
 
270
    /**
271
     * Returns true if this zone observes daylight savings time
272
     *
273
     * Returns true if this zone observes daylight savings time
274
     *
275
     * @access public
276
     * @return boolean true if this time zone has DST
277
     */
278
    function hasDaylightTime()
279
    {
280
        return $this->hasdst;
281
    }
282
 
283
    // }}}
284
    // {{{ inDaylightTime()
285
 
286
    /**
287
     * Is the given date/time in DST for this time zone
288
     *
289
     * Attempts to determine if a given Date object represents a date/time
290
     * that is in DST for this time zone.  WARNINGS: this basically attempts to
291
     * "trick" the system into telling us if we're in DST for a given time zone.
292
     * This uses putenv() which may not work in safe mode, and relies on unix time
293
     * which is only valid for dates from 1970 to ~2038.  This relies on the
294
     * underlying OS calls, so it may not work on Windows or on a system where
295
     * zoneinfo is not installed or configured properly.
296
     *
297
     * @access public
298
     * @param object Date $date the date/time to test
299
     * @return boolean true if this date is in DST for this time zone
300
     */
301
    function inDaylightTime($date)
302
    {
303
        $env_tz = '';
304
        if(isset($_ENV['TZ']) && getenv('TZ')) {
305
            $env_tz = getenv('TZ');
306
        }
307
 
308
        putenv('TZ=' . $this->id);
309
        $ltime = localtime($date->getTime(), true);
310
        if ($env_tz != '') {
311
            putenv('TZ=' . $env_tz);
312
        }
313
        return $ltime['tm_isdst'];
314
    }
315
 
316
    // }}}
317
    // {{{ getDSTSavings()
318
 
319
    /**
320
     * Get the DST offset for this time zone
321
     *
322
     * Returns the DST offset of this time zone, in milliseconds,
323
     * if the zone observes DST, zero otherwise.  Currently the
324
     * DST offset is hard-coded to one hour.
325
     *
326
     * @access public
327
     * @return int the DST offset, in milliseconds or zero if the zone does not observe DST
328
     */
329
    function getDSTSavings()
330
    {
331
        if($this->hasdst) {
332
            return 3600000;
333
        } else {
334
            return 0;
335
        }
336
    }
337
 
338
    // }}}
339
    // {{{ getOffset()
340
 
341
    /**
342
     * Get the DST-corrected offset to UTC for the given date
343
     *
344
     * Attempts to get the offset to UTC for a given date/time, taking into
345
     * account daylight savings time, if the time zone observes it and if
346
     * it is in effect.  Please see the WARNINGS on Date::TimeZone::inDaylightTime().
347
     *
348
     *
349
     * @access public
350
     * @param object Date $date the Date to test
351
     * @return int the corrected offset to UTC in milliseconds
352
     */
353
    function getOffset($date)
354
    {
355
        if($this->inDaylightTime($date)) {
356
            return $this->offset + $this->getDSTSavings();
357
        } else {
358
            return $this->offset;
359
        }
360
    }
361
 
362
    // }}}
363
    // {{{ getAvailableIDs()
364
 
365
    /**
366
     * Returns the list of valid time zone id strings
367
     *
368
     * Returns the list of valid time zone id strings
369
     *
370
     * @access public
371
     * @return mixed an array of strings with the valid time zone IDs
372
     */
373
    function getAvailableIDs()
374
    {
375
        return array_keys($GLOBALS['_DATE_TIMEZONE_DATA']);
376
    }
377
 
378
    // }}}
379
    // {{{ getID()
380
 
381
    /**
382
     * Returns the id for this time zone
383
     *
384
     * Returns the time zone id  for this time zone, i.e. "America/Chicago"
385
     *
386
     * @access public
387
     * @return string the id
388
     */
389
    function getID()
390
    {
391
        return $this->id;
392
    }
393
 
394
    // }}}
395
    // {{{ getLongName()
396
 
397
    /**
398
     * Returns the long name for this time zone
399
     *
400
     * Returns the long name for this time zone,
401
     * i.e. "Central Standard Time"
402
     *
403
     * @access public
404
     * @return string the long name
405
     */
406
    function getLongName()
407
    {
408
        return $this->longname;
409
    }
410
 
411
    // }}}
412
    // {{{ getShortName()
413
 
414
    /**
415
     * Returns the short name for this time zone
416
     *
417
     * Returns the short name for this time zone, i.e. "CST"
418
     *
419
     * @access public
420
     * @return string the short name
421
     */
422
    function getShortName()
423
    {
424
        return $this->shortname;
425
    }
426
 
427
    // }}}
428
    // {{{ getDSTLongName()
429
 
430
    /**
431
     * Returns the DST long name for this time zone
432
     *
433
     * Returns the DST long name for this time zone, i.e. "Central Daylight Time"
434
     *
435
     * @access public
436
     * @return string the daylight savings time long name
437
     */
438
    function getDSTLongName()
439
    {
440
        return $this->dstlongname;
441
    }
442
 
443
    // }}}
444
    // {{{ getDSTShortName()
445
 
446
    /**
447
     * Returns the DST short name for this time zone
448
     *
449
     * Returns the DST short name for this time zone, i.e. "CDT"
450
     *
451
     * @access public
452
     * @return string the daylight savings time short name
453
     */
454
    function getDSTShortName()
455
    {
456
        return $this->dstshortname;
457
    }
458
 
459
    // }}}
460
    // {{{ getRawOffset()
461
 
462
    /**
463
     * Returns the raw (non-DST-corrected) offset from UTC/GMT for this time zone
464
     *
465
     * Returns the raw (non-DST-corrected) offset from UTC/GMT for this time zone
466
     *
467
     * @access public
468
     * @return int the offset, in milliseconds
469
     */
470
    function getRawOffset()
471
    {
472
        return $this->offset;
473
    }
474
 
475
    // }}}
476
}
477
 
478
// }}}
479
 
480
/**
481
 * Time Zone Data offset is in miliseconds
482
 *
483
 * @global array $GLOBALS['_DATE_TIMEZONE_DATA']
484
 */
485
$GLOBALS['_DATE_TIMEZONE_DATA'] = array(
486
    'Etc/GMT+12' => array(
487
        'offset' => -43200000,
488
        'longname' => 'GMT-12:00',
489
        'shortname' => 'GMT-12:00',
490
        'hasdst' => false ),
491
    'Etc/GMT+11' => array(
492
        'offset' => -39600000,
493
        'longname' => 'GMT-11:00',
494
        'shortname' => 'GMT-11:00',
495
        'hasdst' => false ),
496
    'MIT' => array(
497
        'offset' => -39600000,
498
        'longname' => 'West Samoa Time',
499
        'shortname' => 'WST',
500
        'hasdst' => false ),
501
    'Pacific/Apia' => array(
502
        'offset' => -39600000,
503
        'longname' => 'West Samoa Time',
504
        'shortname' => 'WST',
505
        'hasdst' => false ),
506
    'Pacific/Midway' => array(
507
        'offset' => -39600000,
508
        'longname' => 'Samoa Standard Time',
509
        'shortname' => 'SST',
510
        'hasdst' => false ),
511
    'Pacific/Niue' => array(
512
        'offset' => -39600000,
513
        'longname' => 'Niue Time',
514
        'shortname' => 'NUT',
515
        'hasdst' => false ),
516
    'Pacific/Pago_Pago' => array(
517
        'offset' => -39600000,
518
        'longname' => 'Samoa Standard Time',
519
        'shortname' => 'SST',
520
        'hasdst' => false ),
521
    'Pacific/Samoa' => array(
522
        'offset' => -39600000,
523
        'longname' => 'Samoa Standard Time',
524
        'shortname' => 'SST',
525
        'hasdst' => false ),
526
    'US/Samoa' => array(
527
        'offset' => -39600000,
528
        'longname' => 'Samoa Standard Time',
529
        'shortname' => 'SST',
530
        'hasdst' => false ),
531
    'America/Adak' => array(
532
        'offset' => -36000000,
533
        'longname' => 'Hawaii-Aleutian Standard Time',
534
        'shortname' => 'HAST',
535
        'hasdst' => true,
536
        'dstlongname' => 'Hawaii-Aleutian Daylight Time',
537
        'dstshortname' => 'HADT' ),
538
    'America/Atka' => array(
539
        'offset' => -36000000,
540
        'longname' => 'Hawaii-Aleutian Standard Time',
541
        'shortname' => 'HAST',
542
        'hasdst' => true,
543
        'dstlongname' => 'Hawaii-Aleutian Daylight Time',
544
        'dstshortname' => 'HADT' ),
545
    'Etc/GMT+10' => array(
546
        'offset' => -36000000,
547
        'longname' => 'GMT-10:00',
548
        'shortname' => 'GMT-10:00',
549
        'hasdst' => false ),
550
    'HST' => array(
551
        'offset' => -36000000,
552
        'longname' => 'Hawaii Standard Time',
553
        'shortname' => 'HST',
554
        'hasdst' => false ),
555
    'Pacific/Fakaofo' => array(
556
        'offset' => -36000000,
557
        'longname' => 'Tokelau Time',
558
        'shortname' => 'TKT',
559
        'hasdst' => false ),
560
    'Pacific/Honolulu' => array(
561
        'offset' => -36000000,
562
        'longname' => 'Hawaii Standard Time',
563
        'shortname' => 'HST',
564
        'hasdst' => false ),
565
    'Pacific/Johnston' => array(
566
        'offset' => -36000000,
567
        'longname' => 'Hawaii Standard Time',
568
        'shortname' => 'HST',
569
        'hasdst' => false ),
570
    'Pacific/Rarotonga' => array(
571
        'offset' => -36000000,
572
        'longname' => 'Cook Is. Time',
573
        'shortname' => 'CKT',
574
        'hasdst' => false ),
575
    'Pacific/Tahiti' => array(
576
        'offset' => -36000000,
577
        'longname' => 'Tahiti Time',
578
        'shortname' => 'TAHT',
579
        'hasdst' => false ),
580
    'SystemV/HST10' => array(
581
        'offset' => -36000000,
582
        'longname' => 'Hawaii Standard Time',
583
        'shortname' => 'HST',
584
        'hasdst' => false ),
585
    'US/Aleutian' => array(
586
        'offset' => -36000000,
587
        'longname' => 'Hawaii-Aleutian Standard Time',
588
        'shortname' => 'HAST',
589
        'hasdst' => true,
590
        'dstlongname' => 'Hawaii-Aleutian Daylight Time',
591
        'dstshortname' => 'HADT' ),
592
    'US/Hawaii' => array(
593
        'offset' => -36000000,
594
        'longname' => 'Hawaii Standard Time',
595
        'shortname' => 'HST',
596
        'hasdst' => false ),
597
    'Pacific/Marquesas' => array(
598
        'offset' => -34200000,
599
        'longname' => 'Marquesas Time',
600
        'shortname' => 'MART',
601
        'hasdst' => false ),
602
    'AST' => array(
603
        'offset' => -32400000,
604
        'longname' => 'Alaska Standard Time',
605
        'shortname' => 'AKST',
606
        'hasdst' => true,
607
        'dstlongname' => 'Alaska Daylight Time',
608
        'dstshortname' => 'AKDT' ),
609
    'America/Anchorage' => array(
610
        'offset' => -32400000,
611
        'longname' => 'Alaska Standard Time',
612
        'shortname' => 'AKST',
613
        'hasdst' => true,
614
        'dstlongname' => 'Alaska Daylight Time',
615
        'dstshortname' => 'AKDT' ),
616
    'America/Juneau' => array(
617
        'offset' => -32400000,
618
        'longname' => 'Alaska Standard Time',
619
        'shortname' => 'AKST',
620
        'hasdst' => true,
621
        'dstlongname' => 'Alaska Daylight Time',
622
        'dstshortname' => 'AKDT' ),
623
    'America/Nome' => array(
624
        'offset' => -32400000,
625
        'longname' => 'Alaska Standard Time',
626
        'shortname' => 'AKST',
627
        'hasdst' => true,
628
        'dstlongname' => 'Alaska Daylight Time',
629
        'dstshortname' => 'AKDT' ),
630
    'America/Yakutat' => array(
631
        'offset' => -32400000,
632
        'longname' => 'Alaska Standard Time',
633
        'shortname' => 'AKST',
634
        'hasdst' => true,
635
        'dstlongname' => 'Alaska Daylight Time',
636
        'dstshortname' => 'AKDT' ),
637
    'Etc/GMT+9' => array(
638
        'offset' => -32400000,
639
        'longname' => 'GMT-09:00',
640
        'shortname' => 'GMT-09:00',
641
        'hasdst' => false ),
642
    'Pacific/Gambier' => array(
643
        'offset' => -32400000,
644
        'longname' => 'Gambier Time',
645
        'shortname' => 'GAMT',
646
        'hasdst' => false ),
647
    'SystemV/YST9' => array(
648
        'offset' => -32400000,
649
        'longname' => 'Gambier Time',
650
        'shortname' => 'GAMT',
651
        'hasdst' => false ),
652
    'SystemV/YST9YDT' => array(
653
        'offset' => -32400000,
654
        'longname' => 'Alaska Standard Time',
655
        'shortname' => 'AKST',
656
        'hasdst' => true,
657
        'dstlongname' => 'Alaska Daylight Time',
658
        'dstshortname' => 'AKDT' ),
659
    'US/Alaska' => array(
660
        'offset' => -32400000,
661
        'longname' => 'Alaska Standard Time',
662
        'shortname' => 'AKST',
663
        'hasdst' => true,
664
        'dstlongname' => 'Alaska Daylight Time',
665
        'dstshortname' => 'AKDT' ),
666
    'America/Dawson' => array(
667
        'offset' => -28800000,
668
        'longname' => 'Pacific Standard Time',
669
        'shortname' => 'PST',
670
        'hasdst' => true,
671
        'dstlongname' => 'Pacific Daylight Time',
672
        'dstshortname' => 'PDT' ),
673
    'America/Ensenada' => array(
674
        'offset' => -28800000,
675
        'longname' => 'Pacific Standard Time',
676
        'shortname' => 'PST',
677
        'hasdst' => true,
678
        'dstlongname' => 'Pacific Daylight Time',
679
        'dstshortname' => 'PDT' ),
680
    'America/Los_Angeles' => array(
681
        'offset' => -28800000,
682
        'longname' => 'Pacific Standard Time',
683
        'shortname' => 'PST',
684
        'hasdst' => true,
685
        'dstlongname' => 'Pacific Daylight Time',
686
        'dstshortname' => 'PDT' ),
687
    'America/Tijuana' => array(
688
        'offset' => -28800000,
689
        'longname' => 'Pacific Standard Time',
690
        'shortname' => 'PST',
691
        'hasdst' => true,
692
        'dstlongname' => 'Pacific Daylight Time',
693
        'dstshortname' => 'PDT' ),
694
    'America/Vancouver' => array(
695
        'offset' => -28800000,
696
        'longname' => 'Pacific Standard Time',
697
        'shortname' => 'PST',
698
        'hasdst' => true,
699
        'dstlongname' => 'Pacific Daylight Time',
700
        'dstshortname' => 'PDT' ),
701
    'America/Whitehorse' => array(
702
        'offset' => -28800000,
703
        'longname' => 'Pacific Standard Time',
704
        'shortname' => 'PST',
705
        'hasdst' => true,
706
        'dstlongname' => 'Pacific Daylight Time',
707
        'dstshortname' => 'PDT' ),
708
    'Canada/Pacific' => array(
709
        'offset' => -28800000,
710
        'longname' => 'Pacific Standard Time',
711
        'shortname' => 'PST',
712
        'hasdst' => true,
713
        'dstlongname' => 'Pacific Daylight Time',
714
        'dstshortname' => 'PDT' ),
715
    'Canada/Yukon' => array(
716
        'offset' => -28800000,
717
        'longname' => 'Pacific Standard Time',
718
        'shortname' => 'PST',
719
        'hasdst' => true,
720
        'dstlongname' => 'Pacific Daylight Time',
721
        'dstshortname' => 'PDT' ),
722
    'Etc/GMT+8' => array(
723
        'offset' => -28800000,
724
        'longname' => 'GMT-08:00',
725
        'shortname' => 'GMT-08:00',
726
        'hasdst' => false ),
727
    'Mexico/BajaNorte' => array(
728
        'offset' => -28800000,
729
        'longname' => 'Pacific Standard Time',
730
        'shortname' => 'PST',
731
        'hasdst' => true,
732
        'dstlongname' => 'Pacific Daylight Time',
733
        'dstshortname' => 'PDT' ),
734
    'PST' => array(
735
        'offset' => -28800000,
736
        'longname' => 'Pacific Standard Time',
737
        'shortname' => 'PST',
738
        'hasdst' => true,
739
        'dstlongname' => 'Pacific Daylight Time',
740
        'dstshortname' => 'PDT' ),
741
    'PST8PDT' => array(
742
        'offset' => -28800000,
743
        'longname' => 'Pacific Standard Time',
744
        'shortname' => 'PST',
745
        'hasdst' => true,
746
        'dstlongname' => 'Pacific Daylight Time',
747
        'dstshortname' => 'PDT' ),
748
    'Pacific/Pitcairn' => array(
749
        'offset' => -28800000,
750
        'longname' => 'Pitcairn Standard Time',
751
        'shortname' => 'PST',
752
        'hasdst' => false ),
753
    'SystemV/PST8' => array(
754
        'offset' => -28800000,
755
        'longname' => 'Pitcairn Standard Time',
756
        'shortname' => 'PST',
757
        'hasdst' => false ),
758
    'SystemV/PST8PDT' => array(
759
        'offset' => -28800000,
760
        'longname' => 'Pacific Standard Time',
761
        'shortname' => 'PST',
762
        'hasdst' => true,
763
        'dstlongname' => 'Pacific Daylight Time',
764
        'dstshortname' => 'PDT' ),
765
    'US/Pacific' => array(
766
        'offset' => -28800000,
767
        'longname' => 'Pacific Standard Time',
768
        'shortname' => 'PST',
769
        'hasdst' => true,
770
        'dstlongname' => 'Pacific Daylight Time',
771
        'dstshortname' => 'PDT' ),
772
    'US/Pacific-New' => array(
773
        'offset' => -28800000,
774
        'longname' => 'Pacific Standard Time',
775
        'shortname' => 'PST',
776
        'hasdst' => true,
777
        'dstlongname' => 'Pacific Daylight Time',
778
        'dstshortname' => 'PDT' ),
779
    'America/Boise' => array(
780
        'offset' => -25200000,
781
        'longname' => 'Mountain Standard Time',
782
        'shortname' => 'MST',
783
        'hasdst' => true,
784
        'dstlongname' => 'Mountain Daylight Time',
785
        'dstshortname' => 'MDT' ),
786
    'America/Cambridge_Bay' => array(
787
        'offset' => -25200000,
788
        'longname' => 'Mountain Standard Time',
789
        'shortname' => 'MST',
790
        'hasdst' => true,
791
        'dstlongname' => 'Mountain Daylight Time',
792
        'dstshortname' => 'MDT' ),
793
    'America/Chihuahua' => array(
794
        'offset' => -25200000,
795
        'longname' => 'Mountain Standard Time',
796
        'shortname' => 'MST',
797
        'hasdst' => true,
798
        'dstlongname' => 'Mountain Daylight Time',
799
        'dstshortname' => 'MDT' ),
800
    'America/Dawson_Creek' => array(
801
        'offset' => -25200000,
802
        'longname' => 'Mountain Standard Time',
803
        'shortname' => 'MST',
804
        'hasdst' => false ),
805
    'America/Denver' => array(
806
        'offset' => -25200000,
807
        'longname' => 'Mountain Standard Time',
808
        'shortname' => 'MST',
809
        'hasdst' => true,
810
        'dstlongname' => 'Mountain Daylight Time',
811
        'dstshortname' => 'MDT' ),
812
    'America/Edmonton' => array(
813
        'offset' => -25200000,
814
        'longname' => 'Mountain Standard Time',
815
        'shortname' => 'MST',
816
        'hasdst' => true,
817
        'dstlongname' => 'Mountain Daylight Time',
818
        'dstshortname' => 'MDT' ),
819
    'America/Hermosillo' => array(
820
        'offset' => -25200000,
821
        'longname' => 'Mountain Standard Time',
822
        'shortname' => 'MST',
823
        'hasdst' => false ),
824
    'America/Inuvik' => array(
825
        'offset' => -25200000,
826
        'longname' => 'Mountain Standard Time',
827
        'shortname' => 'MST',
828
        'hasdst' => true,
829
        'dstlongname' => 'Mountain Daylight Time',
830
        'dstshortname' => 'MDT' ),
831
    'America/Mazatlan' => array(
832
        'offset' => -25200000,
833
        'longname' => 'Mountain Standard Time',
834
        'shortname' => 'MST',
835
        'hasdst' => true,
836
        'dstlongname' => 'Mountain Daylight Time',
837
        'dstshortname' => 'MDT' ),
838
    'America/Phoenix' => array(
839
        'offset' => -25200000,
840
        'longname' => 'Mountain Standard Time',
841
        'shortname' => 'MST',
842
        'hasdst' => false ),
843
    'America/Shiprock' => array(
844
        'offset' => -25200000,
845
        'longname' => 'Mountain Standard Time',
846
        'shortname' => 'MST',
847
        'hasdst' => true,
848
        'dstlongname' => 'Mountain Daylight Time',
849
        'dstshortname' => 'MDT' ),
850
    'America/Yellowknife' => array(
851
        'offset' => -25200000,
852
        'longname' => 'Mountain Standard Time',
853
        'shortname' => 'MST',
854
        'hasdst' => true,
855
        'dstlongname' => 'Mountain Daylight Time',
856
        'dstshortname' => 'MDT' ),
857
    'Canada/Mountain' => array(
858
        'offset' => -25200000,
859
        'longname' => 'Mountain Standard Time',
860
        'shortname' => 'MST',
861
        'hasdst' => true,
862
        'dstlongname' => 'Mountain Daylight Time',
863
        'dstshortname' => 'MDT' ),
864
    'Etc/GMT+7' => array(
865
        'offset' => -25200000,
866
        'longname' => 'GMT-07:00',
867
        'shortname' => 'GMT-07:00',
868
        'hasdst' => false ),
869
    'MST' => array(
870
        'offset' => -25200000,
871
        'longname' => 'Mountain Standard Time',
872
        'shortname' => 'MST',
873
        'hasdst' => true,
874
        'dstlongname' => 'Mountain Daylight Time',
875
        'dstshortname' => 'MDT' ),
876
    'MST7MDT' => array(
877
        'offset' => -25200000,
878
        'longname' => 'Mountain Standard Time',
879
        'shortname' => 'MST',
880
        'hasdst' => true,
881
        'dstlongname' => 'Mountain Daylight Time',
882
        'dstshortname' => 'MDT' ),
883
    'Mexico/BajaSur' => array(
884
        'offset' => -25200000,
885
        'longname' => 'Mountain Standard Time',
886
        'shortname' => 'MST',
887
        'hasdst' => true,
888
        'dstlongname' => 'Mountain Daylight Time',
889
        'dstshortname' => 'MDT' ),
890
    'Navajo' => array(
891
        'offset' => -25200000,
892
        'longname' => 'Mountain Standard Time',
893
        'shortname' => 'MST',
894
        'hasdst' => true,
895
        'dstlongname' => 'Mountain Daylight Time',
896
        'dstshortname' => 'MDT' ),
897
    'PNT' => array(
898
        'offset' => -25200000,
899
        'longname' => 'Mountain Standard Time',
900
        'shortname' => 'MST',
901
        'hasdst' => false ),
902
    'SystemV/MST7' => array(
903
        'offset' => -25200000,
904
        'longname' => 'Mountain Standard Time',
905
        'shortname' => 'MST',
906
        'hasdst' => false ),
907
    'SystemV/MST7MDT' => array(
908
        'offset' => -25200000,
909
        'longname' => 'Mountain Standard Time',
910
        'shortname' => 'MST',
911
        'hasdst' => true,
912
        'dstlongname' => 'Mountain Daylight Time',
913
        'dstshortname' => 'MDT' ),
914
    'US/Arizona' => array(
915
        'offset' => -25200000,
916
        'longname' => 'Mountain Standard Time',
917
        'shortname' => 'MST',
918
        'hasdst' => false ),
919
    'US/Mountain' => array(
920
        'offset' => -25200000,
921
        'longname' => 'Mountain Standard Time',
922
        'shortname' => 'MST',
923
        'hasdst' => true,
924
        'dstlongname' => 'Mountain Daylight Time',
925
        'dstshortname' => 'MDT' ),
926
    'America/Belize' => array(
927
        'offset' => -21600000,
928
        'longname' => 'Central Standard Time',
929
        'shortname' => 'CST',
930
        'hasdst' => false ),
931
    'America/Cancun' => array(
932
        'offset' => -21600000,
933
        'longname' => 'Central Standard Time',
934
        'shortname' => 'CST',
935
        'hasdst' => true,
936
        'dstlongname' => 'Central Daylight Time',
937
        'dstshortname' => 'CDT' ),
938
    'America/Chicago' => array(
939
        'offset' => -21600000,
940
        'longname' => 'Central Standard Time',
941
        'shortname' => 'CST',
942
        'hasdst' => true,
943
        'dstlongname' => 'Central Daylight Time',
944
        'dstshortname' => 'CDT' ),
945
    'America/Costa_Rica' => array(
946
        'offset' => -21600000,
947
        'longname' => 'Central Standard Time',
948
        'shortname' => 'CST',
949
        'hasdst' => false ),
950
    'America/El_Salvador' => array(
951
        'offset' => -21600000,
952
        'longname' => 'Central Standard Time',
953
        'shortname' => 'CST',
954
        'hasdst' => false ),
955
    'America/Guatemala' => array(
956
        'offset' => -21600000,
957
        'longname' => 'Central Standard Time',
958
        'shortname' => 'CST',
959
        'hasdst' => false ),
960
    'America/Managua' => array(
961
        'offset' => -21600000,
962
        'longname' => 'Central Standard Time',
963
        'shortname' => 'CST',
964
        'hasdst' => false ),
965
    'America/Menominee' => array(
966
        'offset' => -21600000,
967
        'longname' => 'Central Standard Time',
968
        'shortname' => 'CST',
969
        'hasdst' => true,
970
        'dstlongname' => 'Central Daylight Time',
971
        'dstshortname' => 'CDT' ),
972
    'America/Merida' => array(
973
        'offset' => -21600000,
974
        'longname' => 'Central Standard Time',
975
        'shortname' => 'CST',
976
        'hasdst' => true,
977
        'dstlongname' => 'Central Daylight Time',
978
        'dstshortname' => 'CDT' ),
979
    'America/Mexico_City' => array(
980
        'offset' => -21600000,
981
        'longname' => 'Central Standard Time',
982
        'shortname' => 'CST',
983
        'hasdst' => false ),
984
    'America/Monterrey' => array(
985
        'offset' => -21600000,
986
        'longname' => 'Central Standard Time',
987
        'shortname' => 'CST',
988
        'hasdst' => true,
989
        'dstlongname' => 'Central Daylight Time',
990
        'dstshortname' => 'CDT' ),
991
    'America/North_Dakota/Center' => array(
992
        'offset' => -21600000,
993
        'longname' => 'Central Standard Time',
994
        'shortname' => 'CST',
995
        'hasdst' => true,
996
        'dstlongname' => 'Central Daylight Time',
997
        'dstshortname' => 'CDT' ),
998
    'America/Rainy_River' => array(
999
        'offset' => -21600000,
1000
        'longname' => 'Central Standard Time',
1001
        'shortname' => 'CST',
1002
        'hasdst' => true,
1003
        'dstlongname' => 'Central Daylight Time',
1004
        'dstshortname' => 'CDT' ),
1005
    'America/Rankin_Inlet' => array(
1006
        'offset' => -21600000,
1007
        'longname' => 'Eastern Standard Time',
1008
        'shortname' => 'EST',
1009
        'hasdst' => true,
1010
        'dstlongname' => 'Eastern Daylight Time',
1011
        'dstshortname' => 'EDT' ),
1012
    'America/Regina' => array(
1013
        'offset' => -21600000,
1014
        'longname' => 'Central Standard Time',
1015
        'shortname' => 'CST',
1016
        'hasdst' => false ),
1017
    'America/Swift_Current' => array(
1018
        'offset' => -21600000,
1019
        'longname' => 'Central Standard Time',
1020
        'shortname' => 'CST',
1021
        'hasdst' => false ),
1022
    'America/Tegucigalpa' => array(
1023
        'offset' => -21600000,
1024
        'longname' => 'Central Standard Time',
1025
        'shortname' => 'CST',
1026
        'hasdst' => false ),
1027
    'America/Winnipeg' => array(
1028
        'offset' => -21600000,
1029
        'longname' => 'Central Standard Time',
1030
        'shortname' => 'CST',
1031
        'hasdst' => true,
1032
        'dstlongname' => 'Central Daylight Time',
1033
        'dstshortname' => 'CDT' ),
1034
    'CST' => array(
1035
        'offset' => -21600000,
1036
        'longname' => 'Central Standard Time',
1037
        'shortname' => 'CST',
1038
        'hasdst' => true,
1039
        'dstlongname' => 'Central Daylight Time',
1040
        'dstshortname' => 'CDT' ),
1041
    'CST6CDT' => array(
1042
        'offset' => -21600000,
1043
        'longname' => 'Central Standard Time',
1044
        'shortname' => 'CST',
1045
        'hasdst' => true,
1046
        'dstlongname' => 'Central Daylight Time',
1047
        'dstshortname' => 'CDT' ),
1048
    'Canada/Central' => array(
1049
        'offset' => -21600000,
1050
        'longname' => 'Central Standard Time',
1051
        'shortname' => 'CST',
1052
        'hasdst' => true,
1053
        'dstlongname' => 'Central Daylight Time',
1054
        'dstshortname' => 'CDT' ),
1055
    'Canada/East-Saskatchewan' => array(
1056
        'offset' => -21600000,
1057
        'longname' => 'Central Standard Time',
1058
        'shortname' => 'CST',
1059
        'hasdst' => false ),
1060
    'Canada/Saskatchewan' => array(
1061
        'offset' => -21600000,
1062
        'longname' => 'Central Standard Time',
1063
        'shortname' => 'CST',
1064
        'hasdst' => false ),
1065
    'Chile/EasterIsland' => array(
1066
        'offset' => -21600000,
1067
        'longname' => 'Easter Is. Time',
1068
        'shortname' => 'EAST',
1069
        'hasdst' => true,
1070
        'dstlongname' => 'Easter Is. Summer Time',
1071
        'dstshortname' => 'EASST' ),
1072
    'Etc/GMT+6' => array(
1073
        'offset' => -21600000,
1074
        'longname' => 'GMT-06:00',
1075
        'shortname' => 'GMT-06:00',
1076
        'hasdst' => false ),
1077
    'Mexico/General' => array(
1078
        'offset' => -21600000,
1079
        'longname' => 'Central Standard Time',
1080
        'shortname' => 'CST',
1081
        'hasdst' => false ),
1082
    'Pacific/Easter' => array(
1083
        'offset' => -21600000,
1084
        'longname' => 'Easter Is. Time',
1085
        'shortname' => 'EAST',
1086
        'hasdst' => true,
1087
        'dstlongname' => 'Easter Is. Summer Time',
1088
        'dstshortname' => 'EASST' ),
1089
    'Pacific/Galapagos' => array(
1090
        'offset' => -21600000,
1091
        'longname' => 'Galapagos Time',
1092
        'shortname' => 'GALT',
1093
        'hasdst' => false ),
1094
    'SystemV/CST6' => array(
1095
        'offset' => -21600000,
1096
        'longname' => 'Central Standard Time',
1097
        'shortname' => 'CST',
1098
        'hasdst' => false ),
1099
    'SystemV/CST6CDT' => array(
1100
        'offset' => -21600000,
1101
        'longname' => 'Central Standard Time',
1102
        'shortname' => 'CST',
1103
        'hasdst' => true,
1104
        'dstlongname' => 'Central Daylight Time',
1105
        'dstshortname' => 'CDT' ),
1106
    'US/Central' => array(
1107
        'offset' => -21600000,
1108
        'longname' => 'Central Standard Time',
1109
        'shortname' => 'CST',
1110
        'hasdst' => true,
1111
        'dstlongname' => 'Central Daylight Time',
1112
        'dstshortname' => 'CDT' ),
1113
    'America/Bogota' => array(
1114
        'offset' => -18000000,
1115
        'longname' => 'Colombia Time',
1116
        'shortname' => 'COT',
1117
        'hasdst' => false ),
1118
    'America/Cayman' => array(
1119
        'offset' => -18000000,
1120
        'longname' => 'Eastern Standard Time',
1121
        'shortname' => 'EST',
1122
        'hasdst' => false ),
1123
    'America/Detroit' => array(
1124
        'offset' => -18000000,
1125
        'longname' => 'Eastern Standard Time',
1126
        'shortname' => 'EST',
1127
        'hasdst' => true,
1128
        'dstlongname' => 'Eastern Daylight Time',
1129
        'dstshortname' => 'EDT' ),
1130
    'America/Eirunepe' => array(
1131
        'offset' => -18000000,
1132
        'longname' => 'Acre Time',
1133
        'shortname' => 'ACT',
1134
        'hasdst' => false ),
1135
    'America/Fort_Wayne' => array(
1136
        'offset' => -18000000,
1137
        'longname' => 'Eastern Standard Time',
1138
        'shortname' => 'EST',
1139
        'hasdst' => false ),
1140
    'America/Grand_Turk' => array(
1141
        'offset' => -18000000,
1142
        'longname' => 'Eastern Standard Time',
1143
        'shortname' => 'EST',
1144
        'hasdst' => true,
1145
        'dstlongname' => 'Eastern Daylight Time',
1146
        'dstshortname' => 'EDT' ),
1147
    'America/Guayaquil' => array(
1148
        'offset' => -18000000,
1149
        'longname' => 'Ecuador Time',
1150
        'shortname' => 'ECT',
1151
        'hasdst' => false ),
1152
    'America/Havana' => array(
1153
        'offset' => -18000000,
1154
        'longname' => 'Central Standard Time',
1155
        'shortname' => 'CST',
1156
        'hasdst' => true,
1157
        'dstlongname' => 'Central Daylight Time',
1158
        'dstshortname' => 'CDT' ),
1159
    'America/Indiana/Indianapolis' => array(
1160
        'offset' => -18000000,
1161
        'longname' => 'Eastern Standard Time',
1162
        'shortname' => 'EST',
1163
        'hasdst' => false ),
1164
    'America/Indiana/Knox' => array(
1165
        'offset' => -18000000,
1166
        'longname' => 'Eastern Standard Time',
1167
        'shortname' => 'EST',
1168
        'hasdst' => false ),
1169
    'America/Indiana/Marengo' => array(
1170
        'offset' => -18000000,
1171
        'longname' => 'Eastern Standard Time',
1172
        'shortname' => 'EST',
1173
        'hasdst' => false ),
1174
    'America/Indiana/Vevay' => array(
1175
        'offset' => -18000000,
1176
        'longname' => 'Eastern Standard Time',
1177
        'shortname' => 'EST',
1178
        'hasdst' => false ),
1179
    'America/Indianapolis' => array(
1180
        'offset' => -18000000,
1181
        'longname' => 'Eastern Standard Time',
1182
        'shortname' => 'EST',
1183
        'hasdst' => false ),
1184
    'America/Iqaluit' => array(
1185
        'offset' => -18000000,
1186
        'longname' => 'Eastern Standard Time',
1187
        'shortname' => 'EST',
1188
        'hasdst' => true,
1189
        'dstlongname' => 'Eastern Daylight Time',
1190
        'dstshortname' => 'EDT' ),
1191
    'America/Jamaica' => array(
1192
        'offset' => -18000000,
1193
        'longname' => 'Eastern Standard Time',
1194
        'shortname' => 'EST',
1195
        'hasdst' => false ),
1196
    'America/Kentucky/Louisville' => array(
1197
        'offset' => -18000000,
1198
        'longname' => 'Eastern Standard Time',
1199
        'shortname' => 'EST',
1200
        'hasdst' => true,
1201
        'dstlongname' => 'Eastern Daylight Time',
1202
        'dstshortname' => 'EDT' ),
1203
    'America/Kentucky/Monticello' => array(
1204
        'offset' => -18000000,
1205
        'longname' => 'Eastern Standard Time',
1206
        'shortname' => 'EST',
1207
        'hasdst' => true,
1208
        'dstlongname' => 'Eastern Daylight Time',
1209
        'dstshortname' => 'EDT' ),
1210
    'America/Knox_IN' => array(
1211
        'offset' => -18000000,
1212
        'longname' => 'Eastern Standard Time',
1213
        'shortname' => 'EST',
1214
        'hasdst' => false ),
1215
    'America/Lima' => array(
1216
        'offset' => -18000000,
1217
        'longname' => 'Peru Time',
1218
        'shortname' => 'PET',
1219
        'hasdst' => false ),
1220
    'America/Louisville' => array(
1221
        'offset' => -18000000,
1222
        'longname' => 'Eastern Standard Time',
1223
        'shortname' => 'EST',
1224
        'hasdst' => true,
1225
        'dstlongname' => 'Eastern Daylight Time',
1226
        'dstshortname' => 'EDT' ),
1227
    'America/Montreal' => array(
1228
        'offset' => -18000000,
1229
        'longname' => 'Eastern Standard Time',
1230
        'shortname' => 'EST',
1231
        'hasdst' => true,
1232
        'dstlongname' => 'Eastern Daylight Time',
1233
        'dstshortname' => 'EDT' ),
1234
    'America/Nassau' => array(
1235
        'offset' => -18000000,
1236
        'longname' => 'Eastern Standard Time',
1237
        'shortname' => 'EST',
1238
        'hasdst' => true,
1239
        'dstlongname' => 'Eastern Daylight Time',
1240
        'dstshortname' => 'EDT' ),
1241
    'America/New_York' => array(
1242
        'offset' => -18000000,
1243
        'longname' => 'Eastern Standard Time',
1244
        'shortname' => 'EST',
1245
        'hasdst' => true,
1246
        'dstlongname' => 'Eastern Daylight Time',
1247
        'dstshortname' => 'EDT' ),
1248
    'America/Nipigon' => array(
1249
        'offset' => -18000000,
1250
        'longname' => 'Eastern Standard Time',
1251
        'shortname' => 'EST',
1252
        'hasdst' => true,
1253
        'dstlongname' => 'Eastern Daylight Time',
1254
        'dstshortname' => 'EDT' ),
1255
    'America/Panama' => array(
1256
        'offset' => -18000000,
1257
        'longname' => 'Eastern Standard Time',
1258
        'shortname' => 'EST',
1259
        'hasdst' => false ),
1260
    'America/Pangnirtung' => array(
1261
        'offset' => -18000000,
1262
        'longname' => 'Eastern Standard Time',
1263
        'shortname' => 'EST',
1264
        'hasdst' => true,
1265
        'dstlongname' => 'Eastern Daylight Time',
1266
        'dstshortname' => 'EDT' ),
1267
    'America/Port-au-Prince' => array(
1268
        'offset' => -18000000,
1269
        'longname' => 'Eastern Standard Time',
1270
        'shortname' => 'EST',
1271
        'hasdst' => false ),
1272
    'America/Porto_Acre' => array(
1273
        'offset' => -18000000,
1274
        'longname' => 'Acre Time',
1275
        'shortname' => 'ACT',
1276
        'hasdst' => false ),
1277
    'America/Rio_Branco' => array(
1278
        'offset' => -18000000,
1279
        'longname' => 'Acre Time',
1280
        'shortname' => 'ACT',
1281
        'hasdst' => false ),
1282
    'America/Thunder_Bay' => array(
1283
        'offset' => -18000000,
1284
        'longname' => 'Eastern Standard Time',
1285
        'shortname' => 'EST',
1286
        'hasdst' => true,
1287
        'dstlongname' => 'Eastern Daylight Time',
1288
        'dstshortname' => 'EDT' ),
1289
    'Brazil/Acre' => array(
1290
        'offset' => -18000000,
1291
        'longname' => 'Acre Time',
1292
        'shortname' => 'ACT',
1293
        'hasdst' => false ),
1294
    'Canada/Eastern' => array(
1295
        'offset' => -18000000,
1296
        'longname' => 'Eastern Standard Time',
1297
        'shortname' => 'EST',
1298
        'hasdst' => true,
1299
        'dstlongname' => 'Eastern Daylight Time',
1300
        'dstshortname' => 'EDT' ),
1301
    'Cuba' => array(
1302
        'offset' => -18000000,
1303
        'longname' => 'Central Standard Time',
1304
        'shortname' => 'CST',
1305
        'hasdst' => true,
1306
        'dstlongname' => 'Central Daylight Time',
1307
        'dstshortname' => 'CDT' ),
1308
    'EST' => array(
1309
        'offset' => -18000000,
1310
        'longname' => 'Eastern Standard Time',
1311
        'shortname' => 'EST',
1312
        'hasdst' => true,
1313
        'dstlongname' => 'Eastern Daylight Time',
1314
        'dstshortname' => 'EDT' ),
1315
    'EST5EDT' => array(
1316
        'offset' => -18000000,
1317
        'longname' => 'Eastern Standard Time',
1318
        'shortname' => 'EST',
1319
        'hasdst' => true,
1320
        'dstlongname' => 'Eastern Daylight Time',
1321
        'dstshortname' => 'EDT' ),
1322
    'Etc/GMT+5' => array(
1323
        'offset' => -18000000,
1324
        'longname' => 'GMT-05:00',
1325
        'shortname' => 'GMT-05:00',
1326
        'hasdst' => false ),
1327
    'IET' => array(
1328
        'offset' => -18000000,
1329
        'longname' => 'Eastern Standard Time',
1330
        'shortname' => 'EST',
1331
        'hasdst' => false ),
1332
    'Jamaica' => array(
1333
        'offset' => -18000000,
1334
        'longname' => 'Eastern Standard Time',
1335
        'shortname' => 'EST',
1336
        'hasdst' => false ),
1337
    'SystemV/EST5' => array(
1338
        'offset' => -18000000,
1339
        'longname' => 'Eastern Standard Time',
1340
        'shortname' => 'EST',
1341
        'hasdst' => false ),
1342
    'SystemV/EST5EDT' => array(
1343
        'offset' => -18000000,
1344
        'longname' => 'Eastern Standard Time',
1345
        'shortname' => 'EST',
1346
        'hasdst' => true,
1347
        'dstlongname' => 'Eastern Daylight Time',
1348
        'dstshortname' => 'EDT' ),
1349
    'US/East-Indiana' => array(
1350
        'offset' => -18000000,
1351
        'longname' => 'Eastern Standard Time',
1352
        'shortname' => 'EST',
1353
        'hasdst' => false ),
1354
    'US/Eastern' => array(
1355
        'offset' => -18000000,
1356
        'longname' => 'Eastern Standard Time',
1357
        'shortname' => 'EST',
1358
        'hasdst' => true,
1359
        'dstlongname' => 'Eastern Daylight Time',
1360
        'dstshortname' => 'EDT' ),
1361
    'US/Indiana-Starke' => array(
1362
        'offset' => -18000000,
1363
        'longname' => 'Eastern Standard Time',
1364
        'shortname' => 'EST',
1365
        'hasdst' => false ),
1366
    'US/Michigan' => array(
1367
        'offset' => -18000000,
1368
        'longname' => 'Eastern Standard Time',
1369
        'shortname' => 'EST',
1370
        'hasdst' => true,
1371
        'dstlongname' => 'Eastern Daylight Time',
1372
        'dstshortname' => 'EDT' ),
1373
    'America/Anguilla' => array(
1374
        'offset' => -14400000,
1375
        'longname' => 'Atlantic Standard Time',
1376
        'shortname' => 'AST',
1377
        'hasdst' => false ),
1378
    'America/Antigua' => array(
1379
        'offset' => -14400000,
1380
        'longname' => 'Atlantic Standard Time',
1381
        'shortname' => 'AST',
1382
        'hasdst' => false ),
1383
    'America/Aruba' => array(
1384
        'offset' => -14400000,
1385
        'longname' => 'Atlantic Standard Time',
1386
        'shortname' => 'AST',
1387
        'hasdst' => false ),
1388
    'America/Asuncion' => array(
1389
        'offset' => -14400000,
1390
        'longname' => 'Paraguay Time',
1391
        'shortname' => 'PYT',
1392
        'hasdst' => true,
1393
        'dstlongname' => 'Paraguay Summer Time',
1394
        'dstshortname' => 'PYST' ),
1395
    'America/Barbados' => array(
1396
        'offset' => -14400000,
1397
        'longname' => 'Atlantic Standard Time',
1398
        'shortname' => 'AST',
1399
        'hasdst' => false ),
1400
    'America/Boa_Vista' => array(
1401
        'offset' => -14400000,
1402
        'longname' => 'Amazon Standard Time',
1403
        'shortname' => 'AMT',
1404
        'hasdst' => false ),
1405
    'America/Caracas' => array(
1406
        'offset' => -14400000,
1407
        'longname' => 'Venezuela Time',
1408
        'shortname' => 'VET',
1409
        'hasdst' => false ),
1410
    'America/Cuiaba' => array(
1411
        'offset' => -14400000,
1412
        'longname' => 'Amazon Standard Time',
1413
        'shortname' => 'AMT',
1414
        'hasdst' => true,
1415
        'dstlongname' => 'Amazon Summer Time',
1416
        'dstshortname' => 'AMST' ),
1417
    'America/Curacao' => array(
1418
        'offset' => -14400000,
1419
        'longname' => 'Atlantic Standard Time',
1420
        'shortname' => 'AST',
1421
        'hasdst' => false ),
1422
    'America/Dominica' => array(
1423
        'offset' => -14400000,
1424
        'longname' => 'Atlantic Standard Time',
1425
        'shortname' => 'AST',
1426
        'hasdst' => false ),
1427
    'America/Glace_Bay' => array(
1428
        'offset' => -14400000,
1429
        'longname' => 'Atlantic Standard Time',
1430
        'shortname' => 'AST',
1431
        'hasdst' => true,
1432
        'dstlongname' => 'Atlantic Daylight Time',
1433
        'dstshortname' => 'ADT' ),
1434
    'America/Goose_Bay' => array(
1435
        'offset' => -14400000,
1436
        'longname' => 'Atlantic Standard Time',
1437
        'shortname' => 'AST',
1438
        'hasdst' => true,
1439
        'dstlongname' => 'Atlantic Daylight Time',
1440
        'dstshortname' => 'ADT' ),
1441
    'America/Grenada' => array(
1442
        'offset' => -14400000,
1443
        'longname' => 'Atlantic Standard Time',
1444
        'shortname' => 'AST',
1445
        'hasdst' => false ),
1446
    'America/Guadeloupe' => array(
1447
        'offset' => -14400000,
1448
        'longname' => 'Atlantic Standard Time',
1449
        'shortname' => 'AST',
1450
        'hasdst' => false ),
1451
    'America/Guyana' => array(
1452
        'offset' => -14400000,
1453
        'longname' => 'Guyana Time',
1454
        'shortname' => 'GYT',
1455
        'hasdst' => false ),
1456
    'America/Halifax' => array(
1457
        'offset' => -14400000,
1458
        'longname' => 'Atlantic Standard Time',
1459
        'shortname' => 'AST',
1460
        'hasdst' => true,
1461
        'dstlongname' => 'Atlantic Daylight Time',
1462
        'dstshortname' => 'ADT' ),
1463
    'America/La_Paz' => array(
1464
        'offset' => -14400000,
1465
        'longname' => 'Bolivia Time',
1466
        'shortname' => 'BOT',
1467
        'hasdst' => false ),
1468
    'America/Manaus' => array(
1469
        'offset' => -14400000,
1470
        'longname' => 'Amazon Standard Time',
1471
        'shortname' => 'AMT',
1472
        'hasdst' => false ),
1473
    'America/Martinique' => array(
1474
        'offset' => -14400000,
1475
        'longname' => 'Atlantic Standard Time',
1476
        'shortname' => 'AST',
1477
        'hasdst' => false ),
1478
    'America/Montserrat' => array(
1479
        'offset' => -14400000,
1480
        'longname' => 'Atlantic Standard Time',
1481
        'shortname' => 'AST',
1482
        'hasdst' => false ),
1483
    'America/Port_of_Spain' => array(
1484
        'offset' => -14400000,
1485
        'longname' => 'Atlantic Standard Time',
1486
        'shortname' => 'AST',
1487
        'hasdst' => false ),
1488
    'America/Porto_Velho' => array(
1489
        'offset' => -14400000,
1490
        'longname' => 'Amazon Standard Time',
1491
        'shortname' => 'AMT',
1492
        'hasdst' => false ),
1493
    'America/Puerto_Rico' => array(
1494
        'offset' => -14400000,
1495
        'longname' => 'Atlantic Standard Time',
1496
        'shortname' => 'AST',
1497
        'hasdst' => false ),
1498
    'America/Santiago' => array(
1499
        'offset' => -14400000,
1500
        'longname' => 'Chile Time',
1501
        'shortname' => 'CLT',
1502
        'hasdst' => true,
1503
        'dstlongname' => 'Chile Summer Time',
1504
        'dstshortname' => 'CLST' ),
1505
    'America/Santo_Domingo' => array(
1506
        'offset' => -14400000,
1507
        'longname' => 'Atlantic Standard Time',
1508
        'shortname' => 'AST',
1509
        'hasdst' => false ),
1510
    'America/St_Kitts' => array(
1511
        'offset' => -14400000,
1512
        'longname' => 'Atlantic Standard Time',
1513
        'shortname' => 'AST',
1514
        'hasdst' => false ),
1515
    'America/St_Lucia' => array(
1516
        'offset' => -14400000,
1517
        'longname' => 'Atlantic Standard Time',
1518
        'shortname' => 'AST',
1519
        'hasdst' => false ),
1520
    'America/St_Thomas' => array(
1521
        'offset' => -14400000,
1522
        'longname' => 'Atlantic Standard Time',
1523
        'shortname' => 'AST',
1524
        'hasdst' => false ),
1525
    'America/St_Vincent' => array(
1526
        'offset' => -14400000,
1527
        'longname' => 'Atlantic Standard Time',
1528
        'shortname' => 'AST',
1529
        'hasdst' => false ),
1530
    'America/Thule' => array(
1531
        'offset' => -14400000,
1532
        'longname' => 'Atlantic Standard Time',
1533
        'shortname' => 'AST',
1534
        'hasdst' => false ),
1535
    'America/Tortola' => array(
1536
        'offset' => -14400000,
1537
        'longname' => 'Atlantic Standard Time',
1538
        'shortname' => 'AST',
1539
        'hasdst' => false ),
1540
    'America/Virgin' => array(
1541
        'offset' => -14400000,
1542
        'longname' => 'Atlantic Standard Time',
1543
        'shortname' => 'AST',
1544
        'hasdst' => false ),
1545
    'Antarctica/Palmer' => array(
1546
        'offset' => -14400000,
1547
        'longname' => 'Chile Time',
1548
        'shortname' => 'CLT',
1549
        'hasdst' => true,
1550
        'dstlongname' => 'Chile Summer Time',
1551
        'dstshortname' => 'CLST' ),
1552
    'Atlantic/Bermuda' => array(
1553
        'offset' => -14400000,
1554
        'longname' => 'Atlantic Standard Time',
1555
        'shortname' => 'AST',
1556
        'hasdst' => true,
1557
        'dstlongname' => 'Atlantic Daylight Time',
1558
        'dstshortname' => 'ADT' ),
1559
    'Atlantic/Stanley' => array(
1560
        'offset' => -14400000,
1561
        'longname' => 'Falkland Is. Time',
1562
        'shortname' => 'FKT',
1563
        'hasdst' => true,
1564
        'dstlongname' => 'Falkland Is. Summer Time',
1565
        'dstshortname' => 'FKST' ),
1566
    'Brazil/West' => array(
1567
        'offset' => -14400000,
1568
        'longname' => 'Amazon Standard Time',
1569
        'shortname' => 'AMT',
1570
        'hasdst' => false ),
1571
    'Canada/Atlantic' => array(
1572
        'offset' => -14400000,
1573
        'longname' => 'Atlantic Standard Time',
1574
        'shortname' => 'AST',
1575
        'hasdst' => true,
1576
        'dstlongname' => 'Atlantic Daylight Time',
1577
        'dstshortname' => 'ADT' ),
1578
    'Chile/Continental' => array(
1579
        'offset' => -14400000,
1580
        'longname' => 'Chile Time',
1581
        'shortname' => 'CLT',
1582
        'hasdst' => true,
1583
        'dstlongname' => 'Chile Summer Time',
1584
        'dstshortname' => 'CLST' ),
1585
    'Etc/GMT+4' => array(
1586
        'offset' => -14400000,
1587
        'longname' => 'GMT-04:00',
1588
        'shortname' => 'GMT-04:00',
1589
        'hasdst' => false ),
1590
    'PRT' => array(
1591
        'offset' => -14400000,
1592
        'longname' => 'Atlantic Standard Time',
1593
        'shortname' => 'AST',
1594
        'hasdst' => false ),
1595
    'SystemV/AST4' => array(
1596
        'offset' => -14400000,
1597
        'longname' => 'Atlantic Standard Time',
1598
        'shortname' => 'AST',
1599
        'hasdst' => false ),
1600
    'SystemV/AST4ADT' => array(
1601
        'offset' => -14400000,
1602
        'longname' => 'Atlantic Standard Time',
1603
        'shortname' => 'AST',
1604
        'hasdst' => true,
1605
        'dstlongname' => 'Atlantic Daylight Time',
1606
        'dstshortname' => 'ADT' ),
1607
    'America/St_Johns' => array(
1608
        'offset' => -12600000,
1609
        'longname' => 'Newfoundland Standard Time',
1610
        'shortname' => 'NST',
1611
        'hasdst' => true,
1612
        'dstlongname' => 'Newfoundland Daylight Time',
1613
        'dstshortname' => 'NDT' ),
1614
    'CNT' => array(
1615
        'offset' => -12600000,
1616
        'longname' => 'Newfoundland Standard Time',
1617
        'shortname' => 'NST',
1618
        'hasdst' => true,
1619
        'dstlongname' => 'Newfoundland Daylight Time',
1620
        'dstshortname' => 'NDT' ),
1621
    'Canada/Newfoundland' => array(
1622
        'offset' => -12600000,
1623
        'longname' => 'Newfoundland Standard Time',
1624
        'shortname' => 'NST',
1625
        'hasdst' => true,
1626
        'dstlongname' => 'Newfoundland Daylight Time',
1627
        'dstshortname' => 'NDT' ),
1628
    'AGT' => array(
1629
        'offset' => -10800000,
1630
        'longname' => 'Argentine Time',
1631
        'shortname' => 'ART',
1632
        'hasdst' => false ),
1633
    'America/Araguaina' => array(
1634
        'offset' => -10800000,
1635
        'longname' => 'Brazil Time',
1636
        'shortname' => 'BRT',
1637
        'hasdst' => true,
1638
        'dstlongname' => 'Brazil Summer Time',
1639
        'dstshortname' => 'BRST' ),
1640
    'America/Belem' => array(
1641
        'offset' => -10800000,
1642
        'longname' => 'Brazil Time',
1643
        'shortname' => 'BRT',
1644
        'hasdst' => false ),
1645
    'America/Buenos_Aires' => array(
1646
        'offset' => -10800000,
1647
        'longname' => 'Argentine Time',
1648
        'shortname' => 'ART',
1649
        'hasdst' => false ),
1650
    'America/Catamarca' => array(
1651
        'offset' => -10800000,
1652
        'longname' => 'Argentine Time',
1653
        'shortname' => 'ART',
1654
        'hasdst' => false ),
1655
    'America/Cayenne' => array(
1656
        'offset' => -10800000,
1657
        'longname' => 'French Guiana Time',
1658
        'shortname' => 'GFT',
1659
        'hasdst' => false ),
1660
    'America/Cordoba' => array(
1661
        'offset' => -10800000,
1662
        'longname' => 'Argentine Time',
1663
        'shortname' => 'ART',
1664
        'hasdst' => false ),
1665
    'America/Fortaleza' => array(
1666
        'offset' => -10800000,
1667
        'longname' => 'Brazil Time',
1668
        'shortname' => 'BRT',
1669
        'hasdst' => true,
1670
        'dstlongname' => 'Brazil Summer Time',
1671
        'dstshortname' => 'BRST' ),
1672
    'America/Godthab' => array(
1673
        'offset' => -10800000,
1674
        'longname' => 'Western Greenland Time',
1675
        'shortname' => 'WGT',
1676
        'hasdst' => true,
1677
        'dstlongname' => 'Western Greenland Summer Time',
1678
        'dstshortname' => 'WGST' ),
1679
    'America/Jujuy' => array(
1680
        'offset' => -10800000,
1681
        'longname' => 'Argentine Time',
1682
        'shortname' => 'ART',
1683
        'hasdst' => false ),
1684
    'America/Maceio' => array(
1685
        'offset' => -10800000,
1686
        'longname' => 'Brazil Time',
1687
        'shortname' => 'BRT',
1688
        'hasdst' => true,
1689
        'dstlongname' => 'Brazil Summer Time',
1690
        'dstshortname' => 'BRST' ),
1691
    'America/Mendoza' => array(
1692
        'offset' => -10800000,
1693
        'longname' => 'Argentine Time',
1694
        'shortname' => 'ART',
1695
        'hasdst' => false ),
1696
    'America/Miquelon' => array(
1697
        'offset' => -10800000,
1698
        'longname' => 'Pierre & Miquelon Standard Time',
1699
        'shortname' => 'PMST',
1700
        'hasdst' => true,
1701
        'dstlongname' => 'Pierre & Miquelon Daylight Time',
1702
        'dstshortname' => 'PMDT' ),
1703
    'America/Montevideo' => array(
1704
        'offset' => -10800000,
1705
        'longname' => 'Uruguay Time',
1706
        'shortname' => 'UYT',
1707
        'hasdst' => false ),
1708
    'America/Paramaribo' => array(
1709
        'offset' => -10800000,
1710
        'longname' => 'Suriname Time',
1711
        'shortname' => 'SRT',
1712
        'hasdst' => false ),
1713
    'America/Recife' => array(
1714
        'offset' => -10800000,
1715
        'longname' => 'Brazil Time',
1716
        'shortname' => 'BRT',
1717
        'hasdst' => true,
1718
        'dstlongname' => 'Brazil Summer Time',
1719
        'dstshortname' => 'BRST' ),
1720
    'America/Rosario' => array(
1721
        'offset' => -10800000,
1722
        'longname' => 'Argentine Time',
1723
        'shortname' => 'ART',
1724
        'hasdst' => false ),
1725
    'America/Sao_Paulo' => array(
1726
        'offset' => -10800000,
1727
        'longname' => 'Brazil Time',
1728
        'shortname' => 'BRT',
1729
        'hasdst' => true,
1730
        'dstlongname' => 'Brazil Summer Time',
1731
        'dstshortname' => 'BRST' ),
1732
    'BET' => array(
1733
        'offset' => -10800000,
1734
        'longname' => 'Brazil Time',
1735
        'shortname' => 'BRT',
1736
        'hasdst' => true,
1737
        'dstlongname' => 'Brazil Summer Time',
1738
        'dstshortname' => 'BRST' ),
1739
    'Brazil/East' => array(
1740
        'offset' => -10800000,
1741
        'longname' => 'Brazil Time',
1742
        'shortname' => 'BRT',
1743
        'hasdst' => true,
1744
        'dstlongname' => 'Brazil Summer Time',
1745
        'dstshortname' => 'BRST' ),
1746
    'Etc/GMT+3' => array(
1747
        'offset' => -10800000,
1748
        'longname' => 'GMT-03:00',
1749
        'shortname' => 'GMT-03:00',
1750
        'hasdst' => false ),
1751
    'America/Noronha' => array(
1752
        'offset' => -7200000,
1753
        'longname' => 'Fernando de Noronha Time',
1754
        'shortname' => 'FNT',
1755
        'hasdst' => false ),
1756
    'Atlantic/South_Georgia' => array(
1757
        'offset' => -7200000,
1758
        'longname' => 'South Georgia Standard Time',
1759
        'shortname' => 'GST',
1760
        'hasdst' => false ),
1761
    'Brazil/DeNoronha' => array(
1762
        'offset' => -7200000,
1763
        'longname' => 'Fernando de Noronha Time',
1764
        'shortname' => 'FNT',
1765
        'hasdst' => false ),
1766
    'Etc/GMT+2' => array(
1767
        'offset' => -7200000,
1768
        'longname' => 'GMT-02:00',
1769
        'shortname' => 'GMT-02:00',
1770
        'hasdst' => false ),
1771
    'America/Scoresbysund' => array(
1772
        'offset' => -3600000,
1773
        'longname' => 'Eastern Greenland Time',
1774
        'shortname' => 'EGT',
1775
        'hasdst' => true,
1776
        'dstlongname' => 'Eastern Greenland Summer Time',
1777
        'dstshortname' => 'EGST' ),
1778
    'Atlantic/Azores' => array(
1779
        'offset' => -3600000,
1780
        'longname' => 'Azores Time',
1781
        'shortname' => 'AZOT',
1782
        'hasdst' => true,
1783
        'dstlongname' => 'Azores Summer Time',
1784
        'dstshortname' => 'AZOST' ),
1785
    'Atlantic/Cape_Verde' => array(
1786
        'offset' => -3600000,
1787
        'longname' => 'Cape Verde Time',
1788
        'shortname' => 'CVT',
1789
        'hasdst' => false ),
1790
    'Etc/GMT+1' => array(
1791
        'offset' => -3600000,
1792
        'longname' => 'GMT-01:00',
1793
        'shortname' => 'GMT-01:00',
1794
        'hasdst' => false ),
1795
    'Africa/Abidjan' => array(
1796
        'offset' => 0,
1797
        'longname' => 'Greenwich Mean Time',
1798
        'shortname' => 'GMT',
1799
        'hasdst' => false ),
1800
    'Africa/Accra' => array(
1801
        'offset' => 0,
1802
        'longname' => 'Greenwich Mean Time',
1803
        'shortname' => 'GMT',
1804
        'hasdst' => false ),
1805
    'Africa/Bamako' => array(
1806
        'offset' => 0,
1807
        'longname' => 'Greenwich Mean Time',
1808
        'shortname' => 'GMT',
1809
        'hasdst' => false ),
1810
    'Africa/Banjul' => array(
1811
        'offset' => 0,
1812
        'longname' => 'Greenwich Mean Time',
1813
        'shortname' => 'GMT',
1814
        'hasdst' => false ),
1815
    'Africa/Bissau' => array(
1816
        'offset' => 0,
1817
        'longname' => 'Greenwich Mean Time',
1818
        'shortname' => 'GMT',
1819
        'hasdst' => false ),
1820
    'Africa/Casablanca' => array(
1821
        'offset' => 0,
1822
        'longname' => 'Western European Time',
1823
        'shortname' => 'WET',
1824
        'hasdst' => false ),
1825
    'Africa/Conakry' => array(
1826
        'offset' => 0,
1827
        'longname' => 'Greenwich Mean Time',
1828
        'shortname' => 'GMT',
1829
        'hasdst' => false ),
1830
    'Africa/Dakar' => array(
1831
        'offset' => 0,
1832
        'longname' => 'Greenwich Mean Time',
1833
        'shortname' => 'GMT',
1834
        'hasdst' => false ),
1835
    'Africa/El_Aaiun' => array(
1836
        'offset' => 0,
1837
        'longname' => 'Western European Time',
1838
        'shortname' => 'WET',
1839
        'hasdst' => false ),
1840
    'Africa/Freetown' => array(
1841
        'offset' => 0,
1842
        'longname' => 'Greenwich Mean Time',
1843
        'shortname' => 'GMT',
1844
        'hasdst' => false ),
1845
    'Africa/Lome' => array(
1846
        'offset' => 0,
1847
        'longname' => 'Greenwich Mean Time',
1848
        'shortname' => 'GMT',
1849
        'hasdst' => false ),
1850
    'Africa/Monrovia' => array(
1851
        'offset' => 0,
1852
        'longname' => 'Greenwich Mean Time',
1853
        'shortname' => 'GMT',
1854
        'hasdst' => false ),
1855
    'Africa/Nouakchott' => array(
1856
        'offset' => 0,
1857
        'longname' => 'Greenwich Mean Time',
1858
        'shortname' => 'GMT',
1859
        'hasdst' => false ),
1860
    'Africa/Ouagadougou' => array(
1861
        'offset' => 0,
1862
        'longname' => 'Greenwich Mean Time',
1863
        'shortname' => 'GMT',
1864
        'hasdst' => false ),
1865
    'Africa/Sao_Tome' => array(
1866
        'offset' => 0,
1867
        'longname' => 'Greenwich Mean Time',
1868
        'shortname' => 'GMT',
1869
        'hasdst' => false ),
1870
    'Africa/Timbuktu' => array(
1871
        'offset' => 0,
1872
        'longname' => 'Greenwich Mean Time',
1873
        'shortname' => 'GMT',
1874
        'hasdst' => false ),
1875
    'America/Danmarkshavn' => array(
1876
        'offset' => 0,
1877
        'longname' => 'Greenwich Mean Time',
1878
        'shortname' => 'GMT',
1879
        'hasdst' => false ),
1880
    'Atlantic/Canary' => array(
1881
        'offset' => 0,
1882
        'longname' => 'Western European Time',
1883
        'shortname' => 'WET',
1884
        'hasdst' => true,
1885
        'dstlongname' => 'Western European Summer Time',
1886
        'dstshortname' => 'WEST' ),
1887
    'Atlantic/Faeroe' => array(
1888
        'offset' => 0,
1889
        'longname' => 'Western European Time',
1890
        'shortname' => 'WET',
1891
        'hasdst' => true,
1892
        'dstlongname' => 'Western European Summer Time',
1893
        'dstshortname' => 'WEST' ),
1894
    'Atlantic/Madeira' => array(
1895
        'offset' => 0,
1896
        'longname' => 'Western European Time',
1897
        'shortname' => 'WET',
1898
        'hasdst' => true,
1899
        'dstlongname' => 'Western European Summer Time',
1900
        'dstshortname' => 'WEST' ),
1901
    'Atlantic/Reykjavik' => array(
1902
        'offset' => 0,
1903
        'longname' => 'Greenwich Mean Time',
1904
        'shortname' => 'GMT',
1905
        'hasdst' => false ),
1906
    'Atlantic/St_Helena' => array(
1907
        'offset' => 0,
1908
        'longname' => 'Greenwich Mean Time',
1909
        'shortname' => 'GMT',
1910
        'hasdst' => false ),
1911
    'Eire' => array(
1912
        'offset' => 0,
1913
        'longname' => 'Greenwich Mean Time',
1914
        'shortname' => 'GMT',
1915
        'hasdst' => true,
1916
        'dstlongname' => 'Irish Summer Time',
1917
        'dstshortname' => 'IST' ),
1918
    'Etc/GMT' => array(
1919
        'offset' => 0,
1920
        'longname' => 'GMT+00:00',
1921
        'shortname' => 'GMT+00:00',
1922
        'hasdst' => false ),
1923
    'Etc/GMT+0' => array(
1924
        'offset' => 0,
1925
        'longname' => 'GMT+00:00',
1926
        'shortname' => 'GMT+00:00',
1927
        'hasdst' => false ),
1928
    'Etc/GMT-0' => array(
1929
        'offset' => 0,
1930
        'longname' => 'GMT+00:00',
1931
        'shortname' => 'GMT+00:00',
1932
        'hasdst' => false ),
1933
    'Etc/GMT0' => array(
1934
        'offset' => 0,
1935
        'longname' => 'GMT+00:00',
1936
        'shortname' => 'GMT+00:00',
1937
        'hasdst' => false ),
1938
    'Etc/Greenwich' => array(
1939
        'offset' => 0,
1940
        'longname' => 'Greenwich Mean Time',
1941
        'shortname' => 'GMT',
1942
        'hasdst' => false ),
1943
    'Etc/UCT' => array(
1944
        'offset' => 0,
1945
        'longname' => 'Coordinated Universal Time',
1946
        'shortname' => 'UTC',
1947
        'hasdst' => false ),
1948
    'Etc/UTC' => array(
1949
        'offset' => 0,
1950
        'longname' => 'Coordinated Universal Time',
1951
        'shortname' => 'UTC',
1952
        'hasdst' => false ),
1953
    'Etc/Universal' => array(
1954
        'offset' => 0,
1955
        'longname' => 'Coordinated Universal Time',
1956
        'shortname' => 'UTC',
1957
        'hasdst' => false ),
1958
    'Etc/Zulu' => array(
1959
        'offset' => 0,
1960
        'longname' => 'Coordinated Universal Time',
1961
        'shortname' => 'UTC',
1962
        'hasdst' => false ),
1963
    'Europe/Belfast' => array(
1964
        'offset' => 0,
1965
        'longname' => 'Greenwich Mean Time',
1966
        'shortname' => 'GMT',
1967
        'hasdst' => true,
1968
        'dstlongname' => 'British Summer Time',
1969
        'dstshortname' => 'BST' ),
1970
    'Europe/Dublin' => array(
1971
        'offset' => 0,
1972
        'longname' => 'Greenwich Mean Time',
1973
        'shortname' => 'GMT',
1974
        'hasdst' => true,
1975
        'dstlongname' => 'Irish Summer Time',
1976
        'dstshortname' => 'IST' ),
1977
    'Europe/Lisbon' => array(
1978
        'offset' => 0,
1979
        'longname' => 'Western European Time',
1980
        'shortname' => 'WET',
1981
        'hasdst' => true,
1982
        'dstlongname' => 'Western European Summer Time',
1983
        'dstshortname' => 'WEST' ),
1984
    'Europe/London' => array(
1985
        'offset' => 0,
1986
        'longname' => 'Greenwich Mean Time',
1987
        'shortname' => 'GMT',
1988
        'hasdst' => true,
1989
        'dstlongname' => 'British Summer Time',
1990
        'dstshortname' => 'BST' ),
1991
    'GB' => array(
1992
        'offset' => 0,
1993
        'longname' => 'Greenwich Mean Time',
1994
        'shortname' => 'GMT',
1995
        'hasdst' => true,
1996
        'dstlongname' => 'British Summer Time',
1997
        'dstshortname' => 'BST' ),
1998
    'GB-Eire' => array(
1999
        'offset' => 0,
2000
        'longname' => 'Greenwich Mean Time',
2001
        'shortname' => 'GMT',
2002
        'hasdst' => true,
2003
        'dstlongname' => 'British Summer Time',
2004
        'dstshortname' => 'BST' ),
2005
    'GMT' => array(
2006
        'offset' => 0,
2007
        'longname' => 'Greenwich Mean Time',
2008
        'shortname' => 'GMT',
2009
        'hasdst' => false ),
2010
    'GMT0' => array(
2011
        'offset' => 0,
2012
        'longname' => 'GMT+00:00',
2013
        'shortname' => 'GMT+00:00',
2014
        'hasdst' => false ),
2015
    'Greenwich' => array(
2016
        'offset' => 0,
2017
        'longname' => 'Greenwich Mean Time',
2018
        'shortname' => 'GMT',
2019
        'hasdst' => false ),
2020
    'Iceland' => array(
2021
        'offset' => 0,
2022
        'longname' => 'Greenwich Mean Time',
2023
        'shortname' => 'GMT',
2024
        'hasdst' => false ),
2025
    'Portugal' => array(
2026
        'offset' => 0,
2027
        'longname' => 'Western European Time',
2028
        'shortname' => 'WET',
2029
        'hasdst' => true,
2030
        'dstlongname' => 'Western European Summer Time',
2031
        'dstshortname' => 'WEST' ),
2032
    'UCT' => array(
2033
        'offset' => 0,
2034
        'longname' => 'Coordinated Universal Time',
2035
        'shortname' => 'UTC',
2036
        'hasdst' => false ),
2037
    'UTC' => array(
2038
        'offset' => 0,
2039
        'longname' => 'Coordinated Universal Time',
2040
        'shortname' => 'UTC',
2041
        'hasdst' => false ),
2042
    'Universal' => array(
2043
        'offset' => 0,
2044
        'longname' => 'Coordinated Universal Time',
2045
        'shortname' => 'UTC',
2046
        'hasdst' => false ),
2047
    'WET' => array(
2048
        'offset' => 0,
2049
        'longname' => 'Western European Time',
2050
        'shortname' => 'WET',
2051
        'hasdst' => true,
2052
        'dstlongname' => 'Western European Summer Time',
2053
        'dstshortname' => 'WEST' ),
2054
    'Zulu' => array(
2055
        'offset' => 0,
2056
        'longname' => 'Coordinated Universal Time',
2057
        'shortname' => 'UTC',
2058
        'hasdst' => false ),
2059
    'Africa/Algiers' => array(
2060
        'offset' => 3600000,
2061
        'longname' => 'Central European Time',
2062
        'shortname' => 'CET',
2063
        'hasdst' => false ),
2064
    'Africa/Bangui' => array(
2065
        'offset' => 3600000,
2066
        'longname' => 'Western African Time',
2067
        'shortname' => 'WAT',
2068
        'hasdst' => false ),
2069
    'Africa/Brazzaville' => array(
2070
        'offset' => 3600000,
2071
        'longname' => 'Western African Time',
2072
        'shortname' => 'WAT',
2073
        'hasdst' => false ),
2074
    'Africa/Ceuta' => array(
2075
        'offset' => 3600000,
2076
        'longname' => 'Central European Time',
2077
        'shortname' => 'CET',
2078
        'hasdst' => true,
2079
        'dstlongname' => 'Central European Summer Time',
2080
        'dstshortname' => 'CEST' ),
2081
    'Africa/Douala' => array(
2082
        'offset' => 3600000,
2083
        'longname' => 'Western African Time',
2084
        'shortname' => 'WAT',
2085
        'hasdst' => false ),
2086
    'Africa/Kinshasa' => array(
2087
        'offset' => 3600000,
2088
        'longname' => 'Western African Time',
2089
        'shortname' => 'WAT',
2090
        'hasdst' => false ),
2091
    'Africa/Lagos' => array(
2092
        'offset' => 3600000,
2093
        'longname' => 'Western African Time',
2094
        'shortname' => 'WAT',
2095
        'hasdst' => false ),
2096
    'Africa/Libreville' => array(
2097
        'offset' => 3600000,
2098
        'longname' => 'Western African Time',
2099
        'shortname' => 'WAT',
2100
        'hasdst' => false ),
2101
    'Africa/Luanda' => array(
2102
        'offset' => 3600000,
2103
        'longname' => 'Western African Time',
2104
        'shortname' => 'WAT',
2105
        'hasdst' => false ),
2106
    'Africa/Malabo' => array(
2107
        'offset' => 3600000,
2108
        'longname' => 'Western African Time',
2109
        'shortname' => 'WAT',
2110
        'hasdst' => false ),
2111
    'Africa/Ndjamena' => array(
2112
        'offset' => 3600000,
2113
        'longname' => 'Western African Time',
2114
        'shortname' => 'WAT',
2115
        'hasdst' => false ),
2116
    'Africa/Niamey' => array(
2117
        'offset' => 3600000,
2118
        'longname' => 'Western African Time',
2119
        'shortname' => 'WAT',
2120
        'hasdst' => false ),
2121
    'Africa/Porto-Novo' => array(
2122
        'offset' => 3600000,
2123
        'longname' => 'Western African Time',
2124
        'shortname' => 'WAT',
2125
        'hasdst' => false ),
2126
    'Africa/Tunis' => array(
2127
        'offset' => 3600000,
2128
        'longname' => 'Central European Time',
2129
        'shortname' => 'CET',
2130
        'hasdst' => false ),
2131
    'Africa/Windhoek' => array(
2132
        'offset' => 3600000,
2133
        'longname' => 'Western African Time',
2134
        'shortname' => 'WAT',
2135
        'hasdst' => true,
2136
        'dstlongname' => 'Western African Summer Time',
2137
        'dstshortname' => 'WAST' ),
2138
    'Arctic/Longyearbyen' => array(
2139
        'offset' => 3600000,
2140
        'longname' => 'Central European Time',
2141
        'shortname' => 'CET',
2142
        'hasdst' => true,
2143
        'dstlongname' => 'Central European Summer Time',
2144
        'dstshortname' => 'CEST' ),
2145
    'Atlantic/Jan_Mayen' => array(
2146
        'offset' => 3600000,
2147
        'longname' => 'Eastern Greenland Time',
2148
        'shortname' => 'EGT',
2149
        'hasdst' => true,
2150
        'dstlongname' => 'Eastern Greenland Summer Time',
2151
        'dstshortname' => 'EGST' ),
2152
    'CET' => array(
2153
        'offset' => 3600000,
2154
        'longname' => 'Central European Time',
2155
        'shortname' => 'CET',
2156
        'hasdst' => true,
2157
        'dstlongname' => 'Central European Summer Time',
2158
        'dstshortname' => 'CEST' ),
2159
    'CEST' => array(
2160
        'offset' => 3600000,
2161
        'longname' => "Central European Time",
2162
        'shortname' => 'CET',
2163
        'hasdst' => true,
2164
        'dstlongname' => "Central European Summer Time",
2165
        'dstshortname' => 'CEST' ),
2166
    'ECT' => array(
2167
        'offset' => 3600000,
2168
        'longname' => 'Central European Time',
2169
        'shortname' => 'CET',
2170
        'hasdst' => true,
2171
        'dstlongname' => 'Central European Summer Time',
2172
        'dstshortname' => 'CEST' ),
2173
    'Etc/GMT-1' => array(
2174
        'offset' => 3600000,
2175
        'longname' => 'GMT+01:00',
2176
        'shortname' => 'GMT+01:00',
2177
        'hasdst' => false ),
2178
    'Europe/Amsterdam' => array(
2179
        'offset' => 3600000,
2180
        'longname' => 'Central European Time',
2181
        'shortname' => 'CET',
2182
        'hasdst' => true,
2183
        'dstlongname' => 'Central European Summer Time',
2184
        'dstshortname' => 'CEST' ),
2185
    'Europe/Andorra' => array(
2186
        'offset' => 3600000,
2187
        'longname' => 'Central European Time',
2188
        'shortname' => 'CET',
2189
        'hasdst' => true,
2190
        'dstlongname' => 'Central European Summer Time',
2191
        'dstshortname' => 'CEST' ),
2192
    'Europe/Belgrade' => array(
2193
        'offset' => 3600000,
2194
        'longname' => 'Central European Time',
2195
        'shortname' => 'CET',
2196
        'hasdst' => true,
2197
        'dstlongname' => 'Central European Summer Time',
2198
        'dstshortname' => 'CEST' ),
2199
    'Europe/Berlin' => array(
2200
        'offset' => 3600000,
2201
        'longname' => 'Central European Time',
2202
        'shortname' => 'CET',
2203
        'hasdst' => true,
2204
        'dstlongname' => 'Central European Summer Time',
2205
        'dstshortname' => 'CEST' ),
2206
    'Europe/Bratislava' => array(
2207
        'offset' => 3600000,
2208
        'longname' => 'Central European Time',
2209
        'shortname' => 'CET',
2210
        'hasdst' => true,
2211
        'dstlongname' => 'Central European Summer Time',
2212
        'dstshortname' => 'CEST' ),
2213
    'Europe/Brussels' => array(
2214
        'offset' => 3600000,
2215
        'longname' => 'Central European Time',
2216
        'shortname' => 'CET',
2217
        'hasdst' => true,
2218
        'dstlongname' => 'Central European Summer Time',
2219
        'dstshortname' => 'CEST' ),
2220
    'Europe/Budapest' => array(
2221
        'offset' => 3600000,
2222
        'longname' => 'Central European Time',
2223
        'shortname' => 'CET',
2224
        'hasdst' => true,
2225
        'dstlongname' => 'Central European Summer Time',
2226
        'dstshortname' => 'CEST' ),
2227
    'Europe/Copenhagen' => array(
2228
        'offset' => 3600000,
2229
        'longname' => 'Central European Time',
2230
        'shortname' => 'CET',
2231
        'hasdst' => true,
2232
        'dstlongname' => 'Central European Summer Time',
2233
        'dstshortname' => 'CEST' ),
2234
    'Europe/Gibraltar' => array(
2235
        'offset' => 3600000,
2236
        'longname' => 'Central European Time',
2237
        'shortname' => 'CET',
2238
        'hasdst' => true,
2239
        'dstlongname' => 'Central European Summer Time',
2240
        'dstshortname' => 'CEST' ),
2241
    'Europe/Ljubljana' => array(
2242
        'offset' => 3600000,
2243
        'longname' => 'Central European Time',
2244
        'shortname' => 'CET',
2245
        'hasdst' => true,
2246
        'dstlongname' => 'Central European Summer Time',
2247
        'dstshortname' => 'CEST' ),
2248
    'Europe/Luxembourg' => array(
2249
        'offset' => 3600000,
2250
        'longname' => 'Central European Time',
2251
        'shortname' => 'CET',
2252
        'hasdst' => true,
2253
        'dstlongname' => 'Central European Summer Time',
2254
        'dstshortname' => 'CEST' ),
2255
    'Europe/Madrid' => array(
2256
        'offset' => 3600000,
2257
        'longname' => 'Central European Time',
2258
        'shortname' => 'CET',
2259
        'hasdst' => true,
2260
        'dstlongname' => 'Central European Summer Time',
2261
        'dstshortname' => 'CEST' ),
2262
    'Europe/Malta' => array(
2263
        'offset' => 3600000,
2264
        'longname' => 'Central European Time',
2265
        'shortname' => 'CET',
2266
        'hasdst' => true,
2267
        'dstlongname' => 'Central European Summer Time',
2268
        'dstshortname' => 'CEST' ),
2269
    'Europe/Monaco' => array(
2270
        'offset' => 3600000,
2271
        'longname' => 'Central European Time',
2272
        'shortname' => 'CET',
2273
        'hasdst' => true,
2274
        'dstlongname' => 'Central European Summer Time',
2275
        'dstshortname' => 'CEST' ),
2276
    'Europe/Oslo' => array(
2277
        'offset' => 3600000,
2278
        'longname' => 'Central European Time',
2279
        'shortname' => 'CET',
2280
        'hasdst' => true,
2281
        'dstlongname' => 'Central European Summer Time',
2282
        'dstshortname' => 'CEST' ),
2283
    'Europe/Paris' => array(
2284
        'offset' => 3600000,
2285
        'longname' => 'Central European Time',
2286
        'shortname' => 'CET',
2287
        'hasdst' => true,
2288
        'dstlongname' => 'Central European Summer Time',
2289
        'dstshortname' => 'CEST' ),
2290
    'Europe/Prague' => array(
2291
        'offset' => 3600000,
2292
        'longname' => 'Central European Time',
2293
        'shortname' => 'CET',
2294
        'hasdst' => true,
2295
        'dstlongname' => 'Central European Summer Time',
2296
        'dstshortname' => 'CEST' ),
2297
    'Europe/Rome' => array(
2298
        'offset' => 3600000,
2299
        'longname' => 'Central European Time',
2300
        'shortname' => 'CET',
2301
        'hasdst' => true,
2302
        'dstlongname' => 'Central European Summer Time',
2303
        'dstshortname' => 'CEST' ),
2304
    'Europe/San_Marino' => array(
2305
        'offset' => 3600000,
2306
        'longname' => 'Central European Time',
2307
        'shortname' => 'CET',
2308
        'hasdst' => true,
2309
        'dstlongname' => 'Central European Summer Time',
2310
        'dstshortname' => 'CEST' ),
2311
    'Europe/Sarajevo' => array(
2312
        'offset' => 3600000,
2313
        'longname' => 'Central European Time',
2314
        'shortname' => 'CET',
2315
        'hasdst' => true,
2316
        'dstlongname' => 'Central European Summer Time',
2317
        'dstshortname' => 'CEST' ),
2318
    'Europe/Skopje' => array(
2319
        'offset' => 3600000,
2320
        'longname' => 'Central European Time',
2321
        'shortname' => 'CET',
2322
        'hasdst' => true,
2323
        'dstlongname' => 'Central European Summer Time',
2324
        'dstshortname' => 'CEST' ),
2325
    'Europe/Stockholm' => array(
2326
        'offset' => 3600000,
2327
        'longname' => 'Central European Time',
2328
        'shortname' => 'CET',
2329
        'hasdst' => true,
2330
        'dstlongname' => 'Central European Summer Time',
2331
        'dstshortname' => 'CEST' ),
2332
    'Europe/Tirane' => array(
2333
        'offset' => 3600000,
2334
        'longname' => 'Central European Time',
2335
        'shortname' => 'CET',
2336
        'hasdst' => true,
2337
        'dstlongname' => 'Central European Summer Time',
2338
        'dstshortname' => 'CEST' ),
2339
    'Europe/Vaduz' => array(
2340
        'offset' => 3600000,
2341
        'longname' => 'Central European Time',
2342
        'shortname' => 'CET',
2343
        'hasdst' => true,
2344
        'dstlongname' => 'Central European Summer Time',
2345
        'dstshortname' => 'CEST' ),
2346
    'Europe/Vatican' => array(
2347
        'offset' => 3600000,
2348
        'longname' => 'Central European Time',
2349
        'shortname' => 'CET',
2350
        'hasdst' => true,
2351
        'dstlongname' => 'Central European Summer Time',
2352
        'dstshortname' => 'CEST' ),
2353
    'Europe/Vienna' => array(
2354
        'offset' => 3600000,
2355
        'longname' => 'Central European Time',
2356
        'shortname' => 'CET',
2357
        'hasdst' => true,
2358
        'dstlongname' => 'Central European Summer Time',
2359
        'dstshortname' => 'CEST' ),
2360
    'Europe/Warsaw' => array(
2361
        'offset' => 3600000,
2362
        'longname' => 'Central European Time',
2363
        'shortname' => 'CET',
2364
        'hasdst' => true,
2365
        'dstlongname' => 'Central European Summer Time',
2366
        'dstshortname' => 'CEST' ),
2367
    'Europe/Zagreb' => array(
2368
        'offset' => 3600000,
2369
        'longname' => 'Central European Time',
2370
        'shortname' => 'CET',
2371
        'hasdst' => true,
2372
        'dstlongname' => 'Central European Summer Time',
2373
        'dstshortname' => 'CEST' ),
2374
    'Europe/Zurich' => array(
2375
        'offset' => 3600000,
2376
        'longname' => 'Central European Time',
2377
        'shortname' => 'CET',
2378
        'hasdst' => true,
2379
        'dstlongname' => 'Central European Summer Time',
2380
        'dstshortname' => 'CEST' ),
2381
    'MET' => array(
2382
        'offset' => 3600000,
2383
        'longname' => 'Middle Europe Time',
2384
        'shortname' => 'MET',
2385
        'hasdst' => true,
2386
        'dstlongname' => 'Middle Europe Summer Time',
2387
        'dstshortname' => 'MEST' ),
2388
    'Poland' => array(
2389
        'offset' => 3600000,
2390
        'longname' => 'Central European Time',
2391
        'shortname' => 'CET',
2392
        'hasdst' => true,
2393
        'dstlongname' => 'Central European Summer Time',
2394
        'dstshortname' => 'CEST' ),
2395
    'ART' => array(
2396
        'offset' => 7200000,
2397
        'longname' => 'Eastern European Time',
2398
        'shortname' => 'EET',
2399
        'hasdst' => true,
2400
        'dstlongname' => 'Eastern European Summer Time',
2401
        'dstshortname' => 'EEST' ),
2402
    'Africa/Blantyre' => array(
2403
        'offset' => 7200000,
2404
        'longname' => 'Central African Time',
2405
        'shortname' => 'CAT',
2406
        'hasdst' => false ),
2407
    'Africa/Bujumbura' => array(
2408
        'offset' => 7200000,
2409
        'longname' => 'Central African Time',
2410
        'shortname' => 'CAT',
2411
        'hasdst' => false ),
2412
    'Africa/Cairo' => array(
2413
        'offset' => 7200000,
2414
        'longname' => 'Eastern European Time',
2415
        'shortname' => 'EET',
2416
        'hasdst' => true,
2417
        'dstlongname' => 'Eastern European Summer Time',
2418
        'dstshortname' => 'EEST' ),
2419
    'Africa/Gaborone' => array(
2420
        'offset' => 7200000,
2421
        'longname' => 'Central African Time',
2422
        'shortname' => 'CAT',
2423
        'hasdst' => false ),
2424
    'Africa/Harare' => array(
2425
        'offset' => 7200000,
2426
        'longname' => 'Central African Time',
2427
        'shortname' => 'CAT',
2428
        'hasdst' => false ),
2429
    'Africa/Johannesburg' => array(
2430
        'offset' => 7200000,
2431
        'longname' => 'South Africa Standard Time',
2432
        'shortname' => 'SAST',
2433
        'hasdst' => false ),
2434
    'Africa/Kigali' => array(
2435
        'offset' => 7200000,
2436
        'longname' => 'Central African Time',
2437
        'shortname' => 'CAT',
2438
        'hasdst' => false ),
2439
    'Africa/Lubumbashi' => array(
2440
        'offset' => 7200000,
2441
        'longname' => 'Central African Time',
2442
        'shortname' => 'CAT',
2443
        'hasdst' => false ),
2444
    'Africa/Lusaka' => array(
2445
        'offset' => 7200000,
2446
        'longname' => 'Central African Time',
2447
        'shortname' => 'CAT',
2448
        'hasdst' => false ),
2449
    'Africa/Maputo' => array(
2450
        'offset' => 7200000,
2451
        'longname' => 'Central African Time',
2452
        'shortname' => 'CAT',
2453
        'hasdst' => false ),
2454
    'Africa/Maseru' => array(
2455
        'offset' => 7200000,
2456
        'longname' => 'South Africa Standard Time',
2457
        'shortname' => 'SAST',
2458
        'hasdst' => false ),
2459
    'Africa/Mbabane' => array(
2460
        'offset' => 7200000,
2461
        'longname' => 'South Africa Standard Time',
2462
        'shortname' => 'SAST',
2463
        'hasdst' => false ),
2464
    'Africa/Tripoli' => array(
2465
        'offset' => 7200000,
2466
        'longname' => 'Eastern European Time',
2467
        'shortname' => 'EET',
2468
        'hasdst' => false ),
2469
    'Asia/Amman' => array(
2470
        'offset' => 7200000,
2471
        'longname' => 'Eastern European Time',
2472
        'shortname' => 'EET',
2473
        'hasdst' => true,
2474
        'dstlongname' => 'Eastern European Summer Time',
2475
        'dstshortname' => 'EEST' ),
2476
    'Asia/Beirut' => array(
2477
        'offset' => 7200000,
2478
        'longname' => 'Eastern European Time',
2479
        'shortname' => 'EET',
2480
        'hasdst' => true,
2481
        'dstlongname' => 'Eastern European Summer Time',
2482
        'dstshortname' => 'EEST' ),
2483
    'Asia/Damascus' => array(
2484
        'offset' => 7200000,
2485
        'longname' => 'Eastern European Time',
2486
        'shortname' => 'EET',
2487
        'hasdst' => true,
2488
        'dstlongname' => 'Eastern European Summer Time',
2489
        'dstshortname' => 'EEST' ),
2490
    'Asia/Gaza' => array(
2491
        'offset' => 7200000,
2492
        'longname' => 'Eastern European Time',
2493
        'shortname' => 'EET',
2494
        'hasdst' => true,
2495
        'dstlongname' => 'Eastern European Summer Time',
2496
        'dstshortname' => 'EEST' ),
2497
    'Asia/Istanbul' => array(
2498
        'offset' => 7200000,
2499
        'longname' => 'Eastern European Time',
2500
        'shortname' => 'EET',
2501
        'hasdst' => true,
2502
        'dstlongname' => 'Eastern European Summer Time',
2503
        'dstshortname' => 'EEST' ),
2504
    'Asia/Jerusalem' => array(
2505
        'offset' => 7200000,
2506
        'longname' => 'Israel Standard Time',
2507
        'shortname' => 'IST',
2508
        'hasdst' => true,
2509
        'dstlongname' => 'Israel Daylight Time',
2510
        'dstshortname' => 'IDT' ),
2511
    'Asia/Nicosia' => array(
2512
        'offset' => 7200000,
2513
        'longname' => 'Eastern European Time',
2514
        'shortname' => 'EET',
2515
        'hasdst' => true,
2516
        'dstlongname' => 'Eastern European Summer Time',
2517
        'dstshortname' => 'EEST' ),
2518
    'Asia/Tel_Aviv' => array(
2519
        'offset' => 7200000,
2520
        'longname' => 'Israel Standard Time',
2521
        'shortname' => 'IST',
2522
        'hasdst' => true,
2523
        'dstlongname' => 'Israel Daylight Time',
2524
        'dstshortname' => 'IDT' ),
2525
    'CAT' => array(
2526
        'offset' => 7200000,
2527
        'longname' => 'Central African Time',
2528
        'shortname' => 'CAT',
2529
        'hasdst' => false ),
2530
    'EET' => array(
2531
        'offset' => 7200000,
2532
        'longname' => 'Eastern European Time',
2533
        'shortname' => 'EET',
2534
        'hasdst' => true,
2535
        'dstlongname' => 'Eastern European Summer Time',
2536
        'dstshortname' => 'EEST' ),
2537
    'Egypt' => array(
2538
        'offset' => 7200000,
2539
        'longname' => 'Eastern European Time',
2540
        'shortname' => 'EET',
2541
        'hasdst' => true,
2542
        'dstlongname' => 'Eastern European Summer Time',
2543
        'dstshortname' => 'EEST' ),
2544
    'Etc/GMT-2' => array(
2545
        'offset' => 7200000,
2546
        'longname' => 'GMT+02:00',
2547
        'shortname' => 'GMT+02:00',
2548
        'hasdst' => false ),
2549
    'Europe/Athens' => array(
2550
        'offset' => 7200000,
2551
        'longname' => 'Eastern European Time',
2552
        'shortname' => 'EET',
2553
        'hasdst' => true,
2554
        'dstlongname' => 'Eastern European Summer Time',
2555
        'dstshortname' => 'EEST' ),
2556
    'Europe/Bucharest' => array(
2557
        'offset' => 7200000,
2558
        'longname' => 'Eastern European Time',
2559
        'shortname' => 'EET',
2560
        'hasdst' => true,
2561
        'dstlongname' => 'Eastern European Summer Time',
2562
        'dstshortname' => 'EEST' ),
2563
    'Europe/Chisinau' => array(
2564
        'offset' => 7200000,
2565
        'longname' => 'Eastern European Time',
2566
        'shortname' => 'EET',
2567
        'hasdst' => true,
2568
        'dstlongname' => 'Eastern European Summer Time',
2569
        'dstshortname' => 'EEST' ),
2570
    'Europe/Helsinki' => array(
2571
        'offset' => 7200000,
2572
        'longname' => 'Eastern European Time',
2573
        'shortname' => 'EET',
2574
        'hasdst' => true,
2575
        'dstlongname' => 'Eastern European Summer Time',
2576
        'dstshortname' => 'EEST' ),
2577
    'Europe/Istanbul' => array(
2578
        'offset' => 7200000,
2579
        'longname' => 'Eastern European Time',
2580
        'shortname' => 'EET',
2581
        'hasdst' => true,
2582
        'dstlongname' => 'Eastern European Summer Time',
2583
        'dstshortname' => 'EEST' ),
2584
    'Europe/Kaliningrad' => array(
2585
        'offset' => 7200000,
2586
        'longname' => 'Eastern European Time',
2587
        'shortname' => 'EET',
2588
        'hasdst' => true,
2589
        'dstlongname' => 'Eastern European Summer Time',
2590
        'dstshortname' => 'EEST' ),
2591
    'Europe/Kiev' => array(
2592
        'offset' => 7200000,
2593
        'longname' => 'Eastern European Time',
2594
        'shortname' => 'EET',
2595
        'hasdst' => true,
2596
        'dstlongname' => 'Eastern European Summer Time',
2597
        'dstshortname' => 'EEST' ),
2598
    'Europe/Minsk' => array(
2599
        'offset' => 7200000,
2600
        'longname' => 'Eastern European Time',
2601
        'shortname' => 'EET',
2602
        'hasdst' => true,
2603
        'dstlongname' => 'Eastern European Summer Time',
2604
        'dstshortname' => 'EEST' ),
2605
    'Europe/Nicosia' => array(
2606
        'offset' => 7200000,
2607
        'longname' => 'Eastern European Time',
2608
        'shortname' => 'EET',
2609
        'hasdst' => true,
2610
        'dstlongname' => 'Eastern European Summer Time',
2611
        'dstshortname' => 'EEST' ),
2612
    'Europe/Riga' => array(
2613
        'offset' => 7200000,
2614
        'longname' => 'Eastern European Time',
2615
        'shortname' => 'EET',
2616
        'hasdst' => true,
2617
        'dstlongname' => 'Eastern European Summer Time',
2618
        'dstshortname' => 'EEST' ),
2619
    'Europe/Simferopol' => array(
2620
        'offset' => 7200000,
2621
        'longname' => 'Eastern European Time',
2622
        'shortname' => 'EET',
2623
        'hasdst' => true,
2624
        'dstlongname' => 'Eastern European Summer Time',
2625
        'dstshortname' => 'EEST' ),
2626
    'Europe/Sofia' => array(
2627
        'offset' => 7200000,
2628
        'longname' => 'Eastern European Time',
2629
        'shortname' => 'EET',
2630
        'hasdst' => true,
2631
        'dstlongname' => 'Eastern European Summer Time',
2632
        'dstshortname' => 'EEST' ),
2633
    'Europe/Tallinn' => array(
2634
        'offset' => 7200000,
2635
        'longname' => 'Eastern European Time',
2636
        'shortname' => 'EET',
2637
        'hasdst' => false ),
2638
    'Europe/Tiraspol' => array(
2639
        'offset' => 7200000,
2640
        'longname' => 'Eastern European Time',
2641
        'shortname' => 'EET',
2642
        'hasdst' => true,
2643
        'dstlongname' => 'Eastern European Summer Time',
2644
        'dstshortname' => 'EEST' ),
2645
    'Europe/Uzhgorod' => array(
2646
        'offset' => 7200000,
2647
        'longname' => 'Eastern European Time',
2648
        'shortname' => 'EET',
2649
        'hasdst' => true,
2650
        'dstlongname' => 'Eastern European Summer Time',
2651
        'dstshortname' => 'EEST' ),
2652
    'Europe/Vilnius' => array(
2653
        'offset' => 7200000,
2654
        'longname' => 'Eastern European Time',
2655
        'shortname' => 'EET',
2656
        'hasdst' => false ),
2657
    'Europe/Zaporozhye' => array(
2658
        'offset' => 7200000,
2659
        'longname' => 'Eastern European Time',
2660
        'shortname' => 'EET',
2661
        'hasdst' => true,
2662
        'dstlongname' => 'Eastern European Summer Time',
2663
        'dstshortname' => 'EEST' ),
2664
    'Israel' => array(
2665
        'offset' => 7200000,
2666
        'longname' => 'Israel Standard Time',
2667
        'shortname' => 'IST',
2668
        'hasdst' => true,
2669
        'dstlongname' => 'Israel Daylight Time',
2670
        'dstshortname' => 'IDT' ),
2671
    'Libya' => array(
2672
        'offset' => 7200000,
2673
        'longname' => 'Eastern European Time',
2674
        'shortname' => 'EET',
2675
        'hasdst' => false ),
2676
    'Turkey' => array(
2677
        'offset' => 7200000,
2678
        'longname' => 'Eastern European Time',
2679
        'shortname' => 'EET',
2680
        'hasdst' => true,
2681
        'dstlongname' => 'Eastern European Summer Time',
2682
        'dstshortname' => 'EEST' ),
2683
    'Africa/Addis_Ababa' => array(
2684
        'offset' => 10800000,
2685
        'longname' => 'Eastern African Time',
2686
        'shortname' => 'EAT',
2687
        'hasdst' => false ),
2688
    'Africa/Asmera' => array(
2689
        'offset' => 10800000,
2690
        'longname' => 'Eastern African Time',
2691
        'shortname' => 'EAT',
2692
        'hasdst' => false ),
2693
    'Africa/Dar_es_Salaam' => array(
2694
        'offset' => 10800000,
2695
        'longname' => 'Eastern African Time',
2696
        'shortname' => 'EAT',
2697
        'hasdst' => false ),
2698
    'Africa/Djibouti' => array(
2699
        'offset' => 10800000,
2700
        'longname' => 'Eastern African Time',
2701
        'shortname' => 'EAT',
2702
        'hasdst' => false ),
2703
    'Africa/Kampala' => array(
2704
        'offset' => 10800000,
2705
        'longname' => 'Eastern African Time',
2706
        'shortname' => 'EAT',
2707
        'hasdst' => false ),
2708
    'Africa/Khartoum' => array(
2709
        'offset' => 10800000,
2710
        'longname' => 'Eastern African Time',
2711
        'shortname' => 'EAT',
2712
        'hasdst' => false ),
2713
    'Africa/Mogadishu' => array(
2714
        'offset' => 10800000,
2715
        'longname' => 'Eastern African Time',
2716
        'shortname' => 'EAT',
2717
        'hasdst' => false ),
2718
    'Africa/Nairobi' => array(
2719
        'offset' => 10800000,
2720
        'longname' => 'Eastern African Time',
2721
        'shortname' => 'EAT',
2722
        'hasdst' => false ),
2723
    'Antarctica/Syowa' => array(
2724
        'offset' => 10800000,
2725
        'longname' => 'Syowa Time',
2726
        'shortname' => 'SYOT',
2727
        'hasdst' => false ),
2728
    'Asia/Aden' => array(
2729
        'offset' => 10800000,
2730
        'longname' => 'Arabia Standard Time',
2731
        'shortname' => 'AST',
2732
        'hasdst' => false ),
2733
    'Asia/Baghdad' => array(
2734
        'offset' => 10800000,
2735
        'longname' => 'Arabia Standard Time',
2736
        'shortname' => 'AST',
2737
        'hasdst' => true,
2738
        'dstlongname' => 'Arabia Daylight Time',
2739
        'dstshortname' => 'ADT' ),
2740
    'Asia/Bahrain' => array(
2741
        'offset' => 10800000,
2742
        'longname' => 'Arabia Standard Time',
2743
        'shortname' => 'AST',
2744
        'hasdst' => false ),
2745
    'Asia/Kuwait' => array(
2746
        'offset' => 10800000,
2747
        'longname' => 'Arabia Standard Time',
2748
        'shortname' => 'AST',
2749
        'hasdst' => false ),
2750
    'Asia/Qatar' => array(
2751
        'offset' => 10800000,
2752
        'longname' => 'Arabia Standard Time',
2753
        'shortname' => 'AST',
2754
        'hasdst' => false ),
2755
    'Asia/Riyadh' => array(
2756
        'offset' => 10800000,
2757
        'longname' => 'Arabia Standard Time',
2758
        'shortname' => 'AST',
2759
        'hasdst' => false ),
2760
    'EAT' => array(
2761
        'offset' => 10800000,
2762
        'longname' => 'Eastern African Time',
2763
        'shortname' => 'EAT',
2764
        'hasdst' => false ),
2765
    'Etc/GMT-3' => array(
2766
        'offset' => 10800000,
2767
        'longname' => 'GMT+03:00',
2768
        'shortname' => 'GMT+03:00',
2769
        'hasdst' => false ),
2770
    'Europe/Moscow' => array(
2771
        'offset' => 10800000,
2772
        'longname' => 'Moscow Standard Time',
2773
        'shortname' => 'MSK',
2774
        'hasdst' => true,
2775
        'dstlongname' => 'Moscow Daylight Time',
2776
        'dstshortname' => 'MSD' ),
2777
    'Indian/Antananarivo' => array(
2778
        'offset' => 10800000,
2779
        'longname' => 'Eastern African Time',
2780
        'shortname' => 'EAT',
2781
        'hasdst' => false ),
2782
    'Indian/Comoro' => array(
2783
        'offset' => 10800000,
2784
        'longname' => 'Eastern African Time',
2785
        'shortname' => 'EAT',
2786
        'hasdst' => false ),
2787
    'Indian/Mayotte' => array(
2788
        'offset' => 10800000,
2789
        'longname' => 'Eastern African Time',
2790
        'shortname' => 'EAT',
2791
        'hasdst' => false ),
2792
    'W-SU' => array(
2793
        'offset' => 10800000,
2794
        'longname' => 'Moscow Standard Time',
2795
        'shortname' => 'MSK',
2796
        'hasdst' => true,
2797
        'dstlongname' => 'Moscow Daylight Time',
2798
        'dstshortname' => 'MSD' ),
2799
    'Asia/Riyadh87' => array(
2800
        'offset' => 11224000,
2801
        'longname' => 'GMT+03:07',
2802
        'shortname' => 'GMT+03:07',
2803
        'hasdst' => false ),
2804
    'Asia/Riyadh88' => array(
2805
        'offset' => 11224000,
2806
        'longname' => 'GMT+03:07',
2807
        'shortname' => 'GMT+03:07',
2808
        'hasdst' => false ),
2809
    'Asia/Riyadh89' => array(
2810
        'offset' => 11224000,
2811
        'longname' => 'GMT+03:07',
2812
        'shortname' => 'GMT+03:07',
2813
        'hasdst' => false ),
2814
    'Mideast/Riyadh87' => array(
2815
        'offset' => 11224000,
2816
        'longname' => 'GMT+03:07',
2817
        'shortname' => 'GMT+03:07',
2818
        'hasdst' => false ),
2819
    'Mideast/Riyadh88' => array(
2820
        'offset' => 11224000,
2821
        'longname' => 'GMT+03:07',
2822
        'shortname' => 'GMT+03:07',
2823
        'hasdst' => false ),
2824
    'Mideast/Riyadh89' => array(
2825
        'offset' => 11224000,
2826
        'longname' => 'GMT+03:07',
2827
        'shortname' => 'GMT+03:07',
2828
        'hasdst' => false ),
2829
    'Asia/Tehran' => array(
2830
        'offset' => 12600000,
2831
        'longname' => 'Iran Time',
2832
        'shortname' => 'IRT',
2833
        'hasdst' => true,
2834
        'dstlongname' => 'Iran Sumer Time',
2835
        'dstshortname' => 'IRST' ),
2836
    'Iran' => array(
2837
        'offset' => 12600000,
2838
        'longname' => 'Iran Time',
2839
        'shortname' => 'IRT',
2840
        'hasdst' => true,
2841
        'dstlongname' => 'Iran Sumer Time',
2842
        'dstshortname' => 'IRST' ),
2843
    'Asia/Aqtau' => array(
2844
        'offset' => 14400000,
2845
        'longname' => 'Aqtau Time',
2846
        'shortname' => 'AQTT',
2847
        'hasdst' => true,
2848
        'dstlongname' => 'Aqtau Summer Time',
2849
        'dstshortname' => 'AQTST' ),
2850
    'Asia/Baku' => array(
2851
        'offset' => 14400000,
2852
        'longname' => 'Azerbaijan Time',
2853
        'shortname' => 'AZT',
2854
        'hasdst' => true,
2855
        'dstlongname' => 'Azerbaijan Summer Time',
2856
        'dstshortname' => 'AZST' ),
2857
    'Asia/Dubai' => array(
2858
        'offset' => 14400000,
2859
        'longname' => 'Gulf Standard Time',
2860
        'shortname' => 'GST',
2861
        'hasdst' => false ),
2862
    'Asia/Muscat' => array(
2863
        'offset' => 14400000,
2864
        'longname' => 'Gulf Standard Time',
2865
        'shortname' => 'GST',
2866
        'hasdst' => false ),
2867
    'Asia/Tbilisi' => array(
2868
        'offset' => 14400000,
2869
        'longname' => 'Georgia Time',
2870
        'shortname' => 'GET',
2871
        'hasdst' => true,
2872
        'dstlongname' => 'Georgia Summer Time',
2873
        'dstshortname' => 'GEST' ),
2874
    'Asia/Yerevan' => array(
2875
        'offset' => 14400000,
2876
        'longname' => 'Armenia Time',
2877
        'shortname' => 'AMT',
2878
        'hasdst' => true,
2879
        'dstlongname' => 'Armenia Summer Time',
2880
        'dstshortname' => 'AMST' ),
2881
    'Etc/GMT-4' => array(
2882
        'offset' => 14400000,
2883
        'longname' => 'GMT+04:00',
2884
        'shortname' => 'GMT+04:00',
2885
        'hasdst' => false ),
2886
    'Europe/Samara' => array(
2887
        'offset' => 14400000,
2888
        'longname' => 'Samara Time',
2889
        'shortname' => 'SAMT',
2890
        'hasdst' => true,
2891
        'dstlongname' => 'Samara Summer Time',
2892
        'dstshortname' => 'SAMST' ),
2893
    'Indian/Mahe' => array(
2894
        'offset' => 14400000,
2895
        'longname' => 'Seychelles Time',
2896
        'shortname' => 'SCT',
2897
        'hasdst' => false ),
2898
    'Indian/Mauritius' => array(
2899
        'offset' => 14400000,
2900
        'longname' => 'Mauritius Time',
2901
        'shortname' => 'MUT',
2902
        'hasdst' => false ),
2903
    'Indian/Reunion' => array(
2904
        'offset' => 14400000,
2905
        'longname' => 'Reunion Time',
2906
        'shortname' => 'RET',
2907
        'hasdst' => false ),
2908
    'NET' => array(
2909
        'offset' => 14400000,
2910
        'longname' => 'Armenia Time',
2911
        'shortname' => 'AMT',
2912
        'hasdst' => true,
2913
        'dstlongname' => 'Armenia Summer Time',
2914
        'dstshortname' => 'AMST' ),
2915
    'Asia/Kabul' => array(
2916
        'offset' => 16200000,
2917
        'longname' => 'Afghanistan Time',
2918
        'shortname' => 'AFT',
2919
        'hasdst' => false ),
2920
    'Asia/Aqtobe' => array(
2921
        'offset' => 18000000,
2922
        'longname' => 'Aqtobe Time',
2923
        'shortname' => 'AQTT',
2924
        'hasdst' => true,
2925
        'dstlongname' => 'Aqtobe Summer Time',
2926
        'dstshortname' => 'AQTST' ),
2927
    'Asia/Ashgabat' => array(
2928
        'offset' => 18000000,
2929
        'longname' => 'Turkmenistan Time',
2930
        'shortname' => 'TMT',
2931
        'hasdst' => false ),
2932
    'Asia/Ashkhabad' => array(
2933
        'offset' => 18000000,
2934
        'longname' => 'Turkmenistan Time',
2935
        'shortname' => 'TMT',
2936
        'hasdst' => false ),
2937
    'Asia/Bishkek' => array(
2938
        'offset' => 18000000,
2939
        'longname' => 'Kirgizstan Time',
2940
        'shortname' => 'KGT',
2941
        'hasdst' => true,
2942
        'dstlongname' => 'Kirgizstan Summer Time',
2943
        'dstshortname' => 'KGST' ),
2944
    'Asia/Dushanbe' => array(
2945
        'offset' => 18000000,
2946
        'longname' => 'Tajikistan Time',
2947
        'shortname' => 'TJT',
2948
        'hasdst' => false ),
2949
    'Asia/Karachi' => array(
2950
        'offset' => 18000000,
2951
        'longname' => 'Pakistan Time',
2952
        'shortname' => 'PKT',
2953
        'hasdst' => false ),
2954
    'Asia/Samarkand' => array(
2955
        'offset' => 18000000,
2956
        'longname' => 'Turkmenistan Time',
2957
        'shortname' => 'TMT',
2958
        'hasdst' => false ),
2959
    'Asia/Tashkent' => array(
2960
        'offset' => 18000000,
2961
        'longname' => 'Uzbekistan Time',
2962
        'shortname' => 'UZT',
2963
        'hasdst' => false ),
2964
    'Asia/Yekaterinburg' => array(
2965
        'offset' => 18000000,
2966
        'longname' => 'Yekaterinburg Time',
2967
        'shortname' => 'YEKT',
2968
        'hasdst' => true,
2969
        'dstlongname' => 'Yekaterinburg Summer Time',
2970
        'dstshortname' => 'YEKST' ),
2971
    'Etc/GMT-5' => array(
2972
        'offset' => 18000000,
2973
        'longname' => 'GMT+05:00',
2974
        'shortname' => 'GMT+05:00',
2975
        'hasdst' => false ),
2976
    'Indian/Kerguelen' => array(
2977
        'offset' => 18000000,
2978
        'longname' => 'French Southern & Antarctic Lands Time',
2979
        'shortname' => 'TFT',
2980
        'hasdst' => false ),
2981
    'Indian/Maldives' => array(
2982
        'offset' => 18000000,
2983
        'longname' => 'Maldives Time',
2984
        'shortname' => 'MVT',
2985
        'hasdst' => false ),
2986
    'PLT' => array(
2987
        'offset' => 18000000,
2988
        'longname' => 'Pakistan Time',
2989
        'shortname' => 'PKT',
2990
        'hasdst' => false ),
2991
    'Asia/Calcutta' => array(
2992
        'offset' => 19800000,
2993
        'longname' => 'India Standard Time',
2994
        'shortname' => 'IST',
2995
        'hasdst' => false ),
2996
    'IST' => array(
2997
        'offset' => 19800000,
2998
        'longname' => 'India Standard Time',
2999
        'shortname' => 'IST',
3000
        'hasdst' => false ),
3001
    'Asia/Katmandu' => array(
3002
        'offset' => 20700000,
3003
        'longname' => 'Nepal Time',
3004
        'shortname' => 'NPT',
3005
        'hasdst' => false ),
3006
    'Antarctica/Mawson' => array(
3007
        'offset' => 21600000,
3008
        'longname' => 'Mawson Time',
3009
        'shortname' => 'MAWT',
3010
        'hasdst' => false ),
3011
    'Antarctica/Vostok' => array(
3012
        'offset' => 21600000,
3013
        'longname' => 'Vostok time',
3014
        'shortname' => 'VOST',
3015
        'hasdst' => false ),
3016
    'Asia/Almaty' => array(
3017
        'offset' => 21600000,
3018
        'longname' => 'Alma-Ata Time',
3019
        'shortname' => 'ALMT',
3020
        'hasdst' => true,
3021
        'dstlongname' => 'Alma-Ata Summer Time',
3022
        'dstshortname' => 'ALMST' ),
3023
    'Asia/Colombo' => array(
3024
        'offset' => 21600000,
3025
        'longname' => 'Sri Lanka Time',
3026
        'shortname' => 'LKT',
3027
        'hasdst' => false ),
3028
    'Asia/Dacca' => array(
3029
        'offset' => 21600000,
3030
        'longname' => 'Bangladesh Time',
3031
        'shortname' => 'BDT',
3032
        'hasdst' => false ),
3033
    'Asia/Dhaka' => array(
3034
        'offset' => 21600000,
3035
        'longname' => 'Bangladesh Time',
3036
        'shortname' => 'BDT',
3037
        'hasdst' => false ),
3038
    'Asia/Novosibirsk' => array(
3039
        'offset' => 21600000,
3040
        'longname' => 'Novosibirsk Time',
3041
        'shortname' => 'NOVT',
3042
        'hasdst' => true,
3043
        'dstlongname' => 'Novosibirsk Summer Time',
3044
        'dstshortname' => 'NOVST' ),
3045
    'Asia/Omsk' => array(
3046
        'offset' => 21600000,
3047
        'longname' => 'Omsk Time',
3048
        'shortname' => 'OMST',
3049
        'hasdst' => true,
3050
        'dstlongname' => 'Omsk Summer Time',
3051
        'dstshortname' => 'OMSST' ),
3052
    'Asia/Thimbu' => array(
3053
        'offset' => 21600000,
3054
        'longname' => 'Bhutan Time',
3055
        'shortname' => 'BTT',
3056
        'hasdst' => false ),
3057
    'Asia/Thimphu' => array(
3058
        'offset' => 21600000,
3059
        'longname' => 'Bhutan Time',
3060
        'shortname' => 'BTT',
3061
        'hasdst' => false ),
3062
    'BDT' => array(
3063
        'offset' => 21600000,
3064
        'longname' => 'Bangladesh Time',
3065
        'shortname' => 'BDT',
3066
        'hasdst' => false ),
3067
    'Etc/GMT-6' => array(
3068
        'offset' => 21600000,
3069
        'longname' => 'GMT+06:00',
3070
        'shortname' => 'GMT+06:00',
3071
        'hasdst' => false ),
3072
    'Indian/Chagos' => array(
3073
        'offset' => 21600000,
3074
        'longname' => 'Indian Ocean Territory Time',
3075
        'shortname' => 'IOT',
3076
        'hasdst' => false ),
3077
    'Asia/Rangoon' => array(
3078
        'offset' => 23400000,
3079
        'longname' => 'Myanmar Time',
3080
        'shortname' => 'MMT',
3081
        'hasdst' => false ),
3082
    'Indian/Cocos' => array(
3083
        'offset' => 23400000,
3084
        'longname' => 'Cocos Islands Time',
3085
        'shortname' => 'CCT',
3086
        'hasdst' => false ),
3087
    'Antarctica/Davis' => array(
3088
        'offset' => 25200000,
3089
        'longname' => 'Davis Time',
3090
        'shortname' => 'DAVT',
3091
        'hasdst' => false ),
3092
    'Asia/Bangkok' => array(
3093
        'offset' => 25200000,
3094
        'longname' => 'Indochina Time',
3095
        'shortname' => 'ICT',
3096
        'hasdst' => false ),
3097
    'Asia/Hovd' => array(
3098
        'offset' => 25200000,
3099
        'longname' => 'Hovd Time',
3100
        'shortname' => 'HOVT',
3101
        'hasdst' => false ),
3102
    'Asia/Jakarta' => array(
3103
        'offset' => 25200000,
3104
        'longname' => 'West Indonesia Time',
3105
        'shortname' => 'WIT',
3106
        'hasdst' => false ),
3107
    'Asia/Krasnoyarsk' => array(
3108
        'offset' => 25200000,
3109
        'longname' => 'Krasnoyarsk Time',
3110
        'shortname' => 'KRAT',
3111
        'hasdst' => true,
3112
        'dstlongname' => 'Krasnoyarsk Summer Time',
3113
        'dstshortname' => 'KRAST' ),
3114
    'Asia/Phnom_Penh' => array(
3115
        'offset' => 25200000,
3116
        'longname' => 'Indochina Time',
3117
        'shortname' => 'ICT',
3118
        'hasdst' => false ),
3119
    'Asia/Pontianak' => array(
3120
        'offset' => 25200000,
3121
        'longname' => 'West Indonesia Time',
3122
        'shortname' => 'WIT',
3123
        'hasdst' => false ),
3124
    'Asia/Saigon' => array(
3125
        'offset' => 25200000,
3126
        'longname' => 'Indochina Time',
3127
        'shortname' => 'ICT',
3128
        'hasdst' => false ),
3129
    'Asia/Vientiane' => array(
3130
        'offset' => 25200000,
3131
        'longname' => 'Indochina Time',
3132
        'shortname' => 'ICT',
3133
        'hasdst' => false ),
3134
    'Etc/GMT-7' => array(
3135
        'offset' => 25200000,
3136
        'longname' => 'GMT+07:00',
3137
        'shortname' => 'GMT+07:00',
3138
        'hasdst' => false ),
3139
    'Indian/Christmas' => array(
3140
        'offset' => 25200000,
3141
        'longname' => 'Christmas Island Time',
3142
        'shortname' => 'CXT',
3143
        'hasdst' => false ),
3144
    'VST' => array(
3145
        'offset' => 25200000,
3146
        'longname' => 'Indochina Time',
3147
        'shortname' => 'ICT',
3148
        'hasdst' => false ),
3149
    'Antarctica/Casey' => array(
3150
        'offset' => 28800000,
3151
        'longname' => 'Western Standard Time (Australia)',
3152
        'shortname' => 'WST',
3153
        'hasdst' => false ),
3154
    'Asia/Brunei' => array(
3155
        'offset' => 28800000,
3156
        'longname' => 'Brunei Time',
3157
        'shortname' => 'BNT',
3158
        'hasdst' => false ),
3159
    'Asia/Chongqing' => array(
3160
        'offset' => 28800000,
3161
        'longname' => 'China Standard Time',
3162
        'shortname' => 'CST',
3163
        'hasdst' => false ),
3164
    'Asia/Chungking' => array(
3165
        'offset' => 28800000,
3166
        'longname' => 'China Standard Time',
3167
        'shortname' => 'CST',
3168
        'hasdst' => false ),
3169
    'Asia/Harbin' => array(
3170
        'offset' => 28800000,
3171
        'longname' => 'China Standard Time',
3172
        'shortname' => 'CST',
3173
        'hasdst' => false ),
3174
    'Asia/Hong_Kong' => array(
3175
        'offset' => 28800000,
3176
        'longname' => 'Hong Kong Time',
3177
        'shortname' => 'HKT',
3178
        'hasdst' => false ),
3179
    'Asia/Irkutsk' => array(
3180
        'offset' => 28800000,
3181
        'longname' => 'Irkutsk Time',
3182
        'shortname' => 'IRKT',
3183
        'hasdst' => true,
3184
        'dstlongname' => 'Irkutsk Summer Time',
3185
        'dstshortname' => 'IRKST' ),
3186
    'Asia/Kashgar' => array(
3187
        'offset' => 28800000,
3188
        'longname' => 'China Standard Time',
3189
        'shortname' => 'CST',
3190
        'hasdst' => false ),
3191
    'Asia/Kuala_Lumpur' => array(
3192
        'offset' => 28800000,
3193
        'longname' => 'Malaysia Time',
3194
        'shortname' => 'MYT',
3195
        'hasdst' => false ),
3196
    'Asia/Kuching' => array(
3197
        'offset' => 28800000,
3198
        'longname' => 'Malaysia Time',
3199
        'shortname' => 'MYT',
3200
        'hasdst' => false ),
3201
    'Asia/Macao' => array(
3202
        'offset' => 28800000,
3203
        'longname' => 'China Standard Time',
3204
        'shortname' => 'CST',
3205
        'hasdst' => false ),
3206
    'Asia/Manila' => array(
3207
        'offset' => 28800000,
3208
        'longname' => 'Philippines Time',
3209
        'shortname' => 'PHT',
3210
        'hasdst' => false ),
3211
    'Asia/Shanghai' => array(
3212
        'offset' => 28800000,
3213
        'longname' => 'China Standard Time',
3214
        'shortname' => 'CST',
3215
        'hasdst' => false ),
3216
    'Asia/Singapore' => array(
3217
        'offset' => 28800000,
3218
        'longname' => 'Singapore Time',
3219
        'shortname' => 'SGT',
3220
        'hasdst' => false ),
3221
    'Asia/Taipei' => array(
3222
        'offset' => 28800000,
3223
        'longname' => 'China Standard Time',
3224
        'shortname' => 'CST',
3225
        'hasdst' => false ),
3226
    'Asia/Ujung_Pandang' => array(
3227
        'offset' => 28800000,
3228
        'longname' => 'Central Indonesia Time',
3229
        'shortname' => 'CIT',
3230
        'hasdst' => false ),
3231
    'Asia/Ulaanbaatar' => array(
3232
        'offset' => 28800000,
3233
        'longname' => 'Ulaanbaatar Time',
3234
        'shortname' => 'ULAT',
3235
        'hasdst' => false ),
3236
    'Asia/Ulan_Bator' => array(
3237
        'offset' => 28800000,
3238
        'longname' => 'Ulaanbaatar Time',
3239
        'shortname' => 'ULAT',
3240
        'hasdst' => false ),
3241
    'Asia/Urumqi' => array(
3242
        'offset' => 28800000,
3243
        'longname' => 'China Standard Time',
3244
        'shortname' => 'CST',
3245
        'hasdst' => false ),
3246
    'Australia/Perth' => array(
3247
        'offset' => 28800000,
3248
        'longname' => 'Western Standard Time (Australia)',
3249
        'shortname' => 'WST',
3250
        'hasdst' => false ),
3251
    'Australia/West' => array(
3252
        'offset' => 28800000,
3253
        'longname' => 'Western Standard Time (Australia)',
3254
        'shortname' => 'WST',
3255
        'hasdst' => false ),
3256
    'CTT' => array(
3257
        'offset' => 28800000,
3258
        'longname' => 'China Standard Time',
3259
        'shortname' => 'CST',
3260
        'hasdst' => false ),
3261
    'Etc/GMT-8' => array(
3262
        'offset' => 28800000,
3263
        'longname' => 'GMT+08:00',
3264
        'shortname' => 'GMT+08:00',
3265
        'hasdst' => false ),
3266
    'Hongkong' => array(
3267
        'offset' => 28800000,
3268
        'longname' => 'Hong Kong Time',
3269
        'shortname' => 'HKT',
3270
        'hasdst' => false ),
3271
    'PRC' => array(
3272
        'offset' => 28800000,
3273
        'longname' => 'China Standard Time',
3274
        'shortname' => 'CST',
3275
        'hasdst' => false ),
3276
    'Singapore' => array(
3277
        'offset' => 28800000,
3278
        'longname' => 'Singapore Time',
3279
        'shortname' => 'SGT',
3280
        'hasdst' => false ),
3281
    'Asia/Choibalsan' => array(
3282
        'offset' => 32400000,
3283
        'longname' => 'Choibalsan Time',
3284
        'shortname' => 'CHOT',
3285
        'hasdst' => false ),
3286
    'Asia/Dili' => array(
3287
        'offset' => 32400000,
3288
        'longname' => 'East Timor Time',
3289
        'shortname' => 'TPT',
3290
        'hasdst' => false ),
3291
    'Asia/Jayapura' => array(
3292
        'offset' => 32400000,
3293
        'longname' => 'East Indonesia Time',
3294
        'shortname' => 'EIT',
3295
        'hasdst' => false ),
3296
    'Asia/Pyongyang' => array(
3297
        'offset' => 32400000,
3298
        'longname' => 'Korea Standard Time',
3299
        'shortname' => 'KST',
3300
        'hasdst' => false ),
3301
    'Asia/Seoul' => array(
3302
        'offset' => 32400000,
3303
        'longname' => 'Korea Standard Time',
3304
        'shortname' => 'KST',
3305
        'hasdst' => false ),
3306
    'Asia/Tokyo' => array(
3307
        'offset' => 32400000,
3308
        'longname' => 'Japan Standard Time',
3309
        'shortname' => 'JST',
3310
        'hasdst' => false ),
3311
    'Asia/Yakutsk' => array(
3312
        'offset' => 32400000,
3313
        'longname' => 'Yakutsk Time',
3314
        'shortname' => 'YAKT',
3315
        'hasdst' => true,
3316
        'dstlongname' => 'Yaktsk Summer Time',
3317
        'dstshortname' => 'YAKST' ),
3318
    'Etc/GMT-9' => array(
3319
        'offset' => 32400000,
3320
        'longname' => 'GMT+09:00',
3321
        'shortname' => 'GMT+09:00',
3322
        'hasdst' => false ),
3323
    'JST' => array(
3324
        'offset' => 32400000,
3325
        'longname' => 'Japan Standard Time',
3326
        'shortname' => 'JST',
3327
        'hasdst' => false ),
3328
    'Japan' => array(
3329
        'offset' => 32400000,
3330
        'longname' => 'Japan Standard Time',
3331
        'shortname' => 'JST',
3332
        'hasdst' => false ),
3333
    'Pacific/Palau' => array(
3334
        'offset' => 32400000,
3335
        'longname' => 'Palau Time',
3336
        'shortname' => 'PWT',
3337
        'hasdst' => false ),
3338
    'ROK' => array(
3339
        'offset' => 32400000,
3340
        'longname' => 'Korea Standard Time',
3341
        'shortname' => 'KST',
3342
        'hasdst' => false ),
3343
    'ACT' => array(
3344
        'offset' => 34200000,
3345
        'longname' => 'Central Standard Time (Northern Territory)',
3346
        'shortname' => 'CST',
3347
        'hasdst' => false ),
3348
    'Australia/Adelaide' => array(
3349
        'offset' => 34200000,
3350
        'longname' => 'Central Standard Time (South Australia)',
3351
        'shortname' => 'CST',
3352
        'hasdst' => true,
3353
        'dstlongname' => 'Central Summer Time (South Australia)',
3354
        'dstshortname' => 'CST' ),
3355
    'Australia/Broken_Hill' => array(
3356
        'offset' => 34200000,
3357
        'longname' => 'Central Standard Time (South Australia/New South Wales)',
3358
        'shortname' => 'CST',
3359
        'hasdst' => true,
3360
        'dstlongname' => 'Central Summer Time (South Australia/New South Wales)',
3361
        'dstshortname' => 'CST' ),
3362
    'Australia/Darwin' => array(
3363
        'offset' => 34200000,
3364
        'longname' => 'Central Standard Time (Northern Territory)',
3365
        'shortname' => 'CST',
3366
        'hasdst' => false ),
3367
    'Australia/North' => array(
3368
        'offset' => 34200000,
3369
        'longname' => 'Central Standard Time (Northern Territory)',
3370
        'shortname' => 'CST',
3371
        'hasdst' => false ),
3372
    'Australia/South' => array(
3373
        'offset' => 34200000,
3374
        'longname' => 'Central Standard Time (South Australia)',
3375
        'shortname' => 'CST',
3376
        'hasdst' => true,
3377
        'dstlongname' => 'Central Summer Time (South Australia)',
3378
        'dstshortname' => 'CST' ),
3379
    'Australia/Yancowinna' => array(
3380
        'offset' => 34200000,
3381
        'longname' => 'Central Standard Time (South Australia/New South Wales)',
3382
        'shortname' => 'CST',
3383
        'hasdst' => true,
3384
        'dstlongname' => 'Central Summer Time (South Australia/New South Wales)',
3385
        'dstshortname' => 'CST' ),
3386
    'AET' => array(
3387
        'offset' => 36000000,
3388
        'longname' => 'Eastern Standard Time (New South Wales)',
3389
        'shortname' => 'EST',
3390
        'hasdst' => true,
3391
        'dstlongname' => 'Eastern Summer Time (New South Wales)',
3392
        'dstshortname' => 'EST' ),
3393
    'Antarctica/DumontDUrville' => array(
3394
        'offset' => 36000000,
3395
        'longname' => 'Dumont-d\'Urville Time',
3396
        'shortname' => 'DDUT',
3397
        'hasdst' => false ),
3398
    'Asia/Sakhalin' => array(
3399
        'offset' => 36000000,
3400
        'longname' => 'Sakhalin Time',
3401
        'shortname' => 'SAKT',
3402
        'hasdst' => true,
3403
        'dstlongname' => 'Sakhalin Summer Time',
3404
        'dstshortname' => 'SAKST' ),
3405
    'Asia/Vladivostok' => array(
3406
        'offset' => 36000000,
3407
        'longname' => 'Vladivostok Time',
3408
        'shortname' => 'VLAT',
3409
        'hasdst' => true,
3410
        'dstlongname' => 'Vladivostok Summer Time',
3411
        'dstshortname' => 'VLAST' ),
3412
    'Australia/ACT' => array(
3413
        'offset' => 36000000,
3414
        'longname' => 'Eastern Standard Time (New South Wales)',
3415
        'shortname' => 'EST',
3416
        'hasdst' => true,
3417
        'dstlongname' => 'Eastern Summer Time (New South Wales)',
3418
        'dstshortname' => 'EST' ),
3419
    'Australia/Brisbane' => array(
3420
        'offset' => 36000000,
3421
        'longname' => 'Eastern Standard Time (Queensland)',
3422
        'shortname' => 'EST',
3423
        'hasdst' => false ),
3424
    'Australia/Canberra' => array(
3425
        'offset' => 36000000,
3426
        'longname' => 'Eastern Standard Time (New South Wales)',
3427
        'shortname' => 'EST',
3428
        'hasdst' => true,
3429
        'dstlongname' => 'Eastern Summer Time (New South Wales)',
3430
        'dstshortname' => 'EST' ),
3431
    'Australia/Hobart' => array(
3432
        'offset' => 36000000,
3433
        'longname' => 'Eastern Standard Time (Tasmania)',
3434
        'shortname' => 'EST',
3435
        'hasdst' => true,
3436
        'dstlongname' => 'Eastern Summer Time (Tasmania)',
3437
        'dstshortname' => 'EST' ),
3438
    'Australia/Lindeman' => array(
3439
        'offset' => 36000000,
3440
        'longname' => 'Eastern Standard Time (Queensland)',
3441
        'shortname' => 'EST',
3442
        'hasdst' => false ),
3443
    'Australia/Melbourne' => array(
3444
        'offset' => 36000000,
3445
        'longname' => 'Eastern Standard Time (Victoria)',
3446
        'shortname' => 'EST',
3447
        'hasdst' => true,
3448
        'dstlongname' => 'Eastern Summer Time (Victoria)',
3449
        'dstshortname' => 'EST' ),
3450
    'Australia/NSW' => array(
3451
        'offset' => 36000000,
3452
        'longname' => 'Eastern Standard Time (New South Wales)',
3453
        'shortname' => 'EST',
3454
        'hasdst' => true,
3455
        'dstlongname' => 'Eastern Summer Time (New South Wales)',
3456
        'dstshortname' => 'EST' ),
3457
    'Australia/Queensland' => array(
3458
        'offset' => 36000000,
3459
        'longname' => 'Eastern Standard Time (Queensland)',
3460
        'shortname' => 'EST',
3461
        'hasdst' => false ),
3462
    'Australia/Sydney' => array(
3463
        'offset' => 36000000,
3464
        'longname' => 'Eastern Standard Time (New South Wales)',
3465
        'shortname' => 'EST',
3466
        'hasdst' => true,
3467
        'dstlongname' => 'Eastern Summer Time (New South Wales)',
3468
        'dstshortname' => 'EST' ),
3469
    'Australia/Tasmania' => array(
3470
        'offset' => 36000000,
3471
        'longname' => 'Eastern Standard Time (Tasmania)',
3472
        'shortname' => 'EST',
3473
        'hasdst' => true,
3474
        'dstlongname' => 'Eastern Summer Time (Tasmania)',
3475
        'dstshortname' => 'EST' ),
3476
    'Australia/Victoria' => array(
3477
        'offset' => 36000000,
3478
        'longname' => 'Eastern Standard Time (Victoria)',
3479
        'shortname' => 'EST',
3480
        'hasdst' => true,
3481
        'dstlongname' => 'Eastern Summer Time (Victoria)',
3482
        'dstshortname' => 'EST' ),
3483
    'Etc/GMT-10' => array(
3484
        'offset' => 36000000,
3485
        'longname' => 'GMT+10:00',
3486
        'shortname' => 'GMT+10:00',
3487
        'hasdst' => false ),
3488
    'Pacific/Guam' => array(
3489
        'offset' => 36000000,
3490
        'longname' => 'Chamorro Standard Time',
3491
        'shortname' => 'ChST',
3492
        'hasdst' => false ),
3493
    'Pacific/Port_Moresby' => array(
3494
        'offset' => 36000000,
3495
        'longname' => 'Papua New Guinea Time',
3496
        'shortname' => 'PGT',
3497
        'hasdst' => false ),
3498
    'Pacific/Saipan' => array(
3499
        'offset' => 36000000,
3500
        'longname' => 'Chamorro Standard Time',
3501
        'shortname' => 'ChST',
3502
        'hasdst' => false ),
3503
    'Pacific/Truk' => array(
3504
        'offset' => 36000000,
3505
        'longname' => 'Truk Time',
3506
        'shortname' => 'TRUT',
3507
        'hasdst' => false ),
3508
    'Pacific/Yap' => array(
3509
        'offset' => 36000000,
3510
        'longname' => 'Yap Time',
3511
        'shortname' => 'YAPT',
3512
        'hasdst' => false ),
3513
    'Australia/LHI' => array(
3514
        'offset' => 37800000,
3515
        'longname' => 'Load Howe Standard Time',
3516
        'shortname' => 'LHST',
3517
        'hasdst' => true,
3518
        'dstlongname' => 'Load Howe Summer Time',
3519
        'dstshortname' => 'LHST' ),
3520
    'Australia/Lord_Howe' => array(
3521
        'offset' => 37800000,
3522
        'longname' => 'Load Howe Standard Time',
3523
        'shortname' => 'LHST',
3524
        'hasdst' => true,
3525
        'dstlongname' => 'Load Howe Summer Time',
3526
        'dstshortname' => 'LHST' ),
3527
    'Asia/Magadan' => array(
3528
        'offset' => 39600000,
3529
        'longname' => 'Magadan Time',
3530
        'shortname' => 'MAGT',
3531
        'hasdst' => true,
3532
        'dstlongname' => 'Magadan Summer Time',
3533
        'dstshortname' => 'MAGST' ),
3534
    'Etc/GMT-11' => array(
3535
        'offset' => 39600000,
3536
        'longname' => 'GMT+11:00',
3537
        'shortname' => 'GMT+11:00',
3538
        'hasdst' => false ),
3539
    'Pacific/Efate' => array(
3540
        'offset' => 39600000,
3541
        'longname' => 'Vanuatu Time',
3542
        'shortname' => 'VUT',
3543
        'hasdst' => false ),
3544
    'Pacific/Guadalcanal' => array(
3545
        'offset' => 39600000,
3546
        'longname' => 'Solomon Is. Time',
3547
        'shortname' => 'SBT',
3548
        'hasdst' => false ),
3549
    'Pacific/Kosrae' => array(
3550
        'offset' => 39600000,
3551
        'longname' => 'Kosrae Time',
3552
        'shortname' => 'KOST',
3553
        'hasdst' => false ),
3554
    'Pacific/Noumea' => array(
3555
        'offset' => 39600000,
3556
        'longname' => 'New Caledonia Time',
3557
        'shortname' => 'NCT',
3558
        'hasdst' => false ),
3559
    'Pacific/Ponape' => array(
3560
        'offset' => 39600000,
3561
        'longname' => 'Ponape Time',
3562
        'shortname' => 'PONT',
3563
        'hasdst' => false ),
3564
    'SST' => array(
3565
        'offset' => 39600000,
3566
        'longname' => 'Solomon Is. Time',
3567
        'shortname' => 'SBT',
3568
        'hasdst' => false ),
3569
    'Pacific/Norfolk' => array(
3570
        'offset' => 41400000,
3571
        'longname' => 'Norfolk Time',
3572
        'shortname' => 'NFT',
3573
        'hasdst' => false ),
3574
    'Antarctica/McMurdo' => array(
3575
        'offset' => 43200000,
3576
        'longname' => 'New Zealand Standard Time',
3577
        'shortname' => 'NZST',
3578
        'hasdst' => true,
3579
        'dstlongname' => 'New Zealand Daylight Time',
3580
        'dstshortname' => 'NZDT' ),
3581
    'Antarctica/South_Pole' => array(
3582
        'offset' => 43200000,
3583
        'longname' => 'New Zealand Standard Time',
3584
        'shortname' => 'NZST',
3585
        'hasdst' => true,
3586
        'dstlongname' => 'New Zealand Daylight Time',
3587
        'dstshortname' => 'NZDT' ),
3588
    'Asia/Anadyr' => array(
3589
        'offset' => 43200000,
3590
        'longname' => 'Anadyr Time',
3591
        'shortname' => 'ANAT',
3592
        'hasdst' => true,
3593
        'dstlongname' => 'Anadyr Summer Time',
3594
        'dstshortname' => 'ANAST' ),
3595
    'Asia/Kamchatka' => array(
3596
        'offset' => 43200000,
3597
        'longname' => 'Petropavlovsk-Kamchatski Time',
3598
        'shortname' => 'PETT',
3599
        'hasdst' => true,
3600
        'dstlongname' => 'Petropavlovsk-Kamchatski Summer Time',
3601
        'dstshortname' => 'PETST' ),
3602
    'Etc/GMT-12' => array(
3603
        'offset' => 43200000,
3604
        'longname' => 'GMT+12:00',
3605
        'shortname' => 'GMT+12:00',
3606
        'hasdst' => false ),
3607
    'Kwajalein' => array(
3608
        'offset' => 43200000,
3609
        'longname' => 'Marshall Islands Time',
3610
        'shortname' => 'MHT',
3611
        'hasdst' => false ),
3612
    'NST' => array(
3613
        'offset' => 43200000,
3614
        'longname' => 'New Zealand Standard Time',
3615
        'shortname' => 'NZST',
3616
        'hasdst' => true,
3617
        'dstlongname' => 'New Zealand Daylight Time',
3618
        'dstshortname' => 'NZDT' ),
3619
    'NZ' => array(
3620
        'offset' => 43200000,
3621
        'longname' => 'New Zealand Standard Time',
3622
        'shortname' => 'NZST',
3623
        'hasdst' => true,
3624
        'dstlongname' => 'New Zealand Daylight Time',
3625
        'dstshortname' => 'NZDT' ),
3626
    'Pacific/Auckland' => array(
3627
        'offset' => 43200000,
3628
        'longname' => 'New Zealand Standard Time',
3629
        'shortname' => 'NZST',
3630
        'hasdst' => true,
3631
        'dstlongname' => 'New Zealand Daylight Time',
3632
        'dstshortname' => 'NZDT' ),
3633
    'Pacific/Fiji' => array(
3634
        'offset' => 43200000,
3635
        'longname' => 'Fiji Time',
3636
        'shortname' => 'FJT',
3637
        'hasdst' => false ),
3638
    'Pacific/Funafuti' => array(
3639
        'offset' => 43200000,
3640
        'longname' => 'Tuvalu Time',
3641
        'shortname' => 'TVT',
3642
        'hasdst' => false ),
3643
    'Pacific/Kwajalein' => array(
3644
        'offset' => 43200000,
3645
        'longname' => 'Marshall Islands Time',
3646
        'shortname' => 'MHT',
3647
        'hasdst' => false ),
3648
    'Pacific/Majuro' => array(
3649
        'offset' => 43200000,
3650
        'longname' => 'Marshall Islands Time',
3651
        'shortname' => 'MHT',
3652
        'hasdst' => false ),
3653
    'Pacific/Nauru' => array(
3654
        'offset' => 43200000,
3655
        'longname' => 'Nauru Time',
3656
        'shortname' => 'NRT',
3657
        'hasdst' => false ),
3658
    'Pacific/Tarawa' => array(
3659
        'offset' => 43200000,
3660
        'longname' => 'Gilbert Is. Time',
3661
        'shortname' => 'GILT',
3662
        'hasdst' => false ),
3663
    'Pacific/Wake' => array(
3664
        'offset' => 43200000,
3665
        'longname' => 'Wake Time',
3666
        'shortname' => 'WAKT',
3667
        'hasdst' => false ),
3668
    'Pacific/Wallis' => array(
3669
        'offset' => 43200000,
3670
        'longname' => 'Wallis & Futuna Time',
3671
        'shortname' => 'WFT',
3672
        'hasdst' => false ),
3673
    'NZ-CHAT' => array(
3674
        'offset' => 45900000,
3675
        'longname' => 'Chatham Standard Time',
3676
        'shortname' => 'CHAST',
3677
        'hasdst' => true,
3678
        'dstlongname' => 'Chatham Daylight Time',
3679
        'dstshortname' => 'CHADT' ),
3680
    'Pacific/Chatham' => array(
3681
        'offset' => 45900000,
3682
        'longname' => 'Chatham Standard Time',
3683
        'shortname' => 'CHAST',
3684
        'hasdst' => true,
3685
        'dstlongname' => 'Chatham Daylight Time',
3686
        'dstshortname' => 'CHADT' ),
3687
    'Etc/GMT-13' => array(
3688
        'offset' => 46800000,
3689
        'longname' => 'GMT+13:00',
3690
        'shortname' => 'GMT+13:00',
3691
        'hasdst' => false ),
3692
    'Pacific/Enderbury' => array(
3693
        'offset' => 46800000,
3694
        'longname' => 'Phoenix Is. Time',
3695
        'shortname' => 'PHOT',
3696
        'hasdst' => false ),
3697
    'Pacific/Tongatapu' => array(
3698
        'offset' => 46800000,
3699
        'longname' => 'Tonga Time',
3700
        'shortname' => 'TOT',
3701
        'hasdst' => false ),
3702
    'Etc/GMT-14' => array(
3703
        'offset' => 50400000,
3704
        'longname' => 'GMT+14:00',
3705
        'shortname' => 'GMT+14:00',
3706
        'hasdst' => false ),
3707
    'Pacific/Kiritimati' => array(
3708
        'offset' => 50400000,
3709
        'longname' => 'Line Is. Time',
3710
        'shortname' => 'LINT',
3711
        'hasdst' => false ),
3712
    'GMT-12:00' => array(
3713
        'offset' => -43200000,
3714
        'longname' => 'GMT-12:00',
3715
        'shortname' => 'GMT-12:00',
3716
        'hasdst' => false ),
3717
    'GMT-11:00' => array(
3718
        'offset' => -39600000,
3719
        'longname' => 'GMT-11:00',
3720
        'shortname' => 'GMT-11:00',
3721
        'hasdst' => false ),
3722
    'West Samoa Time' => array(
3723
        'offset' => -39600000,
3724
        'longname' => 'West Samoa Time',
3725
        'shortname' => 'WST',
3726
        'hasdst' => false ),
3727
    'Samoa Standard Time' => array(
3728
        'offset' => -39600000,
3729
        'longname' => 'Samoa Standard Time',
3730
        'shortname' => 'SST',
3731
        'hasdst' => false ),
3732
    'Niue Time' => array(
3733
        'offset' => -39600000,
3734
        'longname' => 'Niue Time',
3735
        'shortname' => 'NUT',
3736
        'hasdst' => false ),
3737
    'Hawaii-Aleutian Standard Time' => array(
3738
        'offset' => -36000000,
3739
        'longname' => 'Hawaii-Aleutian Standard Time',
3740
        'shortname' => 'HAST',
3741
        'hasdst' => true,
3742
        'dstlongname' => 'Hawaii-Aleutian Daylight Time',
3743
        'dstshortname' => 'HADT' ),
3744
    'GMT-10:00' => array(
3745
        'offset' => -36000000,
3746
        'longname' => 'GMT-10:00',
3747
        'shortname' => 'GMT-10:00',
3748
        'hasdst' => false ),
3749
    'Hawaii Standard Time' => array(
3750
        'offset' => -36000000,
3751
        'longname' => 'Hawaii Standard Time',
3752
        'shortname' => 'HST',
3753
        'hasdst' => false ),
3754
    'Tokelau Time' => array(
3755
        'offset' => -36000000,
3756
        'longname' => 'Tokelau Time',
3757
        'shortname' => 'TKT',
3758
        'hasdst' => false ),
3759
    'Cook Is. Time' => array(
3760
        'offset' => -36000000,
3761
        'longname' => 'Cook Is. Time',
3762
        'shortname' => 'CKT',
3763
        'hasdst' => false ),
3764
    'Tahiti Time' => array(
3765
        'offset' => -36000000,
3766
        'longname' => 'Tahiti Time',
3767
        'shortname' => 'TAHT',
3768
        'hasdst' => false ),
3769
    'Marquesas Time' => array(
3770
        'offset' => -34200000,
3771
        'longname' => 'Marquesas Time',
3772
        'shortname' => 'MART',
3773
        'hasdst' => false ),
3774
    'Alaska Standard Time' => array(
3775
        'offset' => -32400000,
3776
        'longname' => 'Alaska Standard Time',
3777
        'shortname' => 'AKST',
3778
        'hasdst' => true,
3779
        'dstlongname' => 'Alaska Daylight Time',
3780
        'dstshortname' => 'AKDT' ),
3781
    'GMT-09:00' => array(
3782
        'offset' => -32400000,
3783
        'longname' => 'GMT-09:00',
3784
        'shortname' => 'GMT-09:00',
3785
        'hasdst' => false ),
3786
    'Gambier Time' => array(
3787
        'offset' => -32400000,
3788
        'longname' => 'Gambier Time',
3789
        'shortname' => 'GAMT',
3790
        'hasdst' => false ),
3791
    'Pacific Standard Time' => array(
3792
        'offset' => -28800000,
3793
        'longname' => 'Pacific Standard Time',
3794
        'shortname' => 'PST',
3795
        'hasdst' => true,
3796
        'dstlongname' => 'Pacific Daylight Time',
3797
        'dstshortname' => 'PDT' ),
3798
    'GMT-08:00' => array(
3799
        'offset' => -28800000,
3800
        'longname' => 'GMT-08:00',
3801
        'shortname' => 'GMT-08:00',
3802
        'hasdst' => false ),
3803
    'Pitcairn Standard Time' => array(
3804
        'offset' => -28800000,
3805
        'longname' => 'Pitcairn Standard Time',
3806
        'shortname' => 'PST',
3807
        'hasdst' => false ),
3808
    'Mountain Standard Time' => array(
3809
        'offset' => -25200000,
3810
        'longname' => 'Mountain Standard Time',
3811
        'shortname' => 'MST',
3812
        'hasdst' => true,
3813
        'dstlongname' => 'Mountain Daylight Time',
3814
        'dstshortname' => 'MDT' ),
3815
    'GMT-07:00' => array(
3816
        'offset' => -25200000,
3817
        'longname' => 'GMT-07:00',
3818
        'shortname' => 'GMT-07:00',
3819
        'hasdst' => false ),
3820
    'Central Standard Time' => array(
3821
        'offset' => -18000000,
3822
        'longname' => 'Central Standard Time',
3823
        'shortname' => 'CST',
3824
        'hasdst' => true,
3825
        'dstlongname' => 'Central Daylight Time',
3826
        'dstshortname' => 'CDT' ),
3827
    'Eastern Standard Time' => array(
3828
        'offset' => -18000000,
3829
        'longname' => 'Eastern Standard Time',
3830
        'shortname' => 'EST',
3831
        'hasdst' => true,
3832
        'dstlongname' => 'Eastern Daylight Time',
3833
        'dstshortname' => 'EDT' ),
3834
    'Easter Is. Time' => array(
3835
        'offset' => -21600000,
3836
        'longname' => 'Easter Is. Time',
3837
        'shortname' => 'EAST',
3838
        'hasdst' => true,
3839
        'dstlongname' => 'Easter Is. Summer Time',
3840
        'dstshortname' => 'EASST' ),
3841
    'GMT-06:00' => array(
3842
        'offset' => -21600000,
3843
        'longname' => 'GMT-06:00',
3844
        'shortname' => 'GMT-06:00',
3845
        'hasdst' => false ),
3846
    'Galapagos Time' => array(
3847
        'offset' => -21600000,
3848
        'longname' => 'Galapagos Time',
3849
        'shortname' => 'GALT',
3850
        'hasdst' => false ),
3851
    'Colombia Time' => array(
3852
        'offset' => -18000000,
3853
        'longname' => 'Colombia Time',
3854
        'shortname' => 'COT',
3855
        'hasdst' => false ),
3856
    'Acre Time' => array(
3857
        'offset' => -18000000,
3858
        'longname' => 'Acre Time',
3859
        'shortname' => 'ACT',
3860
        'hasdst' => false ),
3861
    'Ecuador Time' => array(
3862
        'offset' => -18000000,
3863
        'longname' => 'Ecuador Time',
3864
        'shortname' => 'ECT',
3865
        'hasdst' => false ),
3866
    'Peru Time' => array(
3867
        'offset' => -18000000,
3868
        'longname' => 'Peru Time',
3869
        'shortname' => 'PET',
3870
        'hasdst' => false ),
3871
    'GMT-05:00' => array(
3872
        'offset' => -18000000,
3873
        'longname' => 'GMT-05:00',
3874
        'shortname' => 'GMT-05:00',
3875
        'hasdst' => false ),
3876
    'Atlantic Standard Time' => array(
3877
        'offset' => -14400000,
3878
        'longname' => 'Atlantic Standard Time',
3879
        'shortname' => 'AST',
3880
        'hasdst' => true,
3881
        'dstlongname' => 'Atlantic Daylight Time',
3882
        'dstshortname' => 'ADT' ),
3883
    'Paraguay Time' => array(
3884
        'offset' => -14400000,
3885
        'longname' => 'Paraguay Time',
3886
        'shortname' => 'PYT',
3887
        'hasdst' => true,
3888
        'dstlongname' => 'Paraguay Summer Time',
3889
        'dstshortname' => 'PYST' ),
3890
    'Amazon Standard Time' => array(
3891
        'offset' => -14400000,
3892
        'longname' => 'Amazon Standard Time',
3893
        'shortname' => 'AMT',
3894
        'hasdst' => false ),
3895
    'Venezuela Time' => array(
3896
        'offset' => -14400000,
3897
        'longname' => 'Venezuela Time',
3898
        'shortname' => 'VET',
3899
        'hasdst' => false ),
3900
    'Guyana Time' => array(
3901
        'offset' => -14400000,
3902
        'longname' => 'Guyana Time',
3903
        'shortname' => 'GYT',
3904
        'hasdst' => false ),
3905
    'Bolivia Time' => array(
3906
        'offset' => -14400000,
3907
        'longname' => 'Bolivia Time',
3908
        'shortname' => 'BOT',
3909
        'hasdst' => false ),
3910
    'Chile Time' => array(
3911
        'offset' => -14400000,
3912
        'longname' => 'Chile Time',
3913
        'shortname' => 'CLT',
3914
        'hasdst' => true,
3915
        'dstlongname' => 'Chile Summer Time',
3916
        'dstshortname' => 'CLST' ),
3917
    'Falkland Is. Time' => array(
3918
        'offset' => -14400000,
3919
        'longname' => 'Falkland Is. Time',
3920
        'shortname' => 'FKT',
3921
        'hasdst' => true,
3922
        'dstlongname' => 'Falkland Is. Summer Time',
3923
        'dstshortname' => 'FKST' ),
3924
    'GMT-04:00' => array(
3925
        'offset' => -14400000,
3926
        'longname' => 'GMT-04:00',
3927
        'shortname' => 'GMT-04:00',
3928
        'hasdst' => false ),
3929
    'Newfoundland Standard Time' => array(
3930
        'offset' => -12600000,
3931
        'longname' => 'Newfoundland Standard Time',
3932
        'shortname' => 'NST',
3933
        'hasdst' => true,
3934
        'dstlongname' => 'Newfoundland Daylight Time',
3935
        'dstshortname' => 'NDT' ),
3936
    'Argentine Time' => array(
3937
        'offset' => -10800000,
3938
        'longname' => 'Argentine Time',
3939
        'shortname' => 'ART',
3940
        'hasdst' => false ),
3941
    'Brazil Time' => array(
3942
        'offset' => -10800000,
3943
        'longname' => 'Brazil Time',
3944
        'shortname' => 'BRT',
3945
        'hasdst' => true,
3946
        'dstlongname' => 'Brazil Summer Time',
3947
        'dstshortname' => 'BRST' ),
3948
    'French Guiana Time' => array(
3949
        'offset' => -10800000,
3950
        'longname' => 'French Guiana Time',
3951
        'shortname' => 'GFT',
3952
        'hasdst' => false ),
3953
    'Western Greenland Time' => array(
3954
        'offset' => -10800000,
3955
        'longname' => 'Western Greenland Time',
3956
        'shortname' => 'WGT',
3957
        'hasdst' => true,
3958
        'dstlongname' => 'Western Greenland Summer Time',
3959
        'dstshortname' => 'WGST' ),
3960
    'Pierre & Miquelon Standard Time' => array(
3961
        'offset' => -10800000,
3962
        'longname' => 'Pierre & Miquelon Standard Time',
3963
        'shortname' => 'PMST',
3964
        'hasdst' => true,
3965
        'dstlongname' => 'Pierre & Miquelon Daylight Time',
3966
        'dstshortname' => 'PMDT' ),
3967
    'Uruguay Time' => array(
3968
        'offset' => -10800000,
3969
        'longname' => 'Uruguay Time',
3970
        'shortname' => 'UYT',
3971
        'hasdst' => false ),
3972
    'Suriname Time' => array(
3973
        'offset' => -10800000,
3974
        'longname' => 'Suriname Time',
3975
        'shortname' => 'SRT',
3976
        'hasdst' => false ),
3977
    'GMT-03:00' => array(
3978
        'offset' => -10800000,
3979
        'longname' => 'GMT-03:00',
3980
        'shortname' => 'GMT-03:00',
3981
        'hasdst' => false ),
3982
    'Fernando de Noronha Time' => array(
3983
        'offset' => -7200000,
3984
        'longname' => 'Fernando de Noronha Time',
3985
        'shortname' => 'FNT',
3986
        'hasdst' => false ),
3987
    'South Georgia Standard Time' => array(
3988
        'offset' => -7200000,
3989
        'longname' => 'South Georgia Standard Time',
3990
        'shortname' => 'GST',
3991
        'hasdst' => false ),
3992
    'GMT-02:00' => array(
3993
        'offset' => -7200000,
3994
        'longname' => 'GMT-02:00',
3995
        'shortname' => 'GMT-02:00',
3996
        'hasdst' => false ),
3997
    'Eastern Greenland Time' => array(
3998
        'offset' => 3600000,
3999
        'longname' => 'Eastern Greenland Time',
4000
        'shortname' => 'EGT',
4001
        'hasdst' => true,
4002
        'dstlongname' => 'Eastern Greenland Summer Time',
4003
        'dstshortname' => 'EGST' ),
4004
    'Azores Time' => array(
4005
        'offset' => -3600000,
4006
        'longname' => 'Azores Time',
4007
        'shortname' => 'AZOT',
4008
        'hasdst' => true,
4009
        'dstlongname' => 'Azores Summer Time',
4010
        'dstshortname' => 'AZOST' ),
4011
    'Cape Verde Time' => array(
4012
        'offset' => -3600000,
4013
        'longname' => 'Cape Verde Time',
4014
        'shortname' => 'CVT',
4015
        'hasdst' => false ),
4016
    'GMT-01:00' => array(
4017
        'offset' => -3600000,
4018
        'longname' => 'GMT-01:00',
4019
        'shortname' => 'GMT-01:00',
4020
        'hasdst' => false ),
4021
    'Greenwich Mean Time' => array(
4022
        'offset' => 0,
4023
        'longname' => 'Greenwich Mean Time',
4024
        'shortname' => 'GMT',
4025
        'hasdst' => false ),
4026
    'Western European Time' => array(
4027
        'offset' => 0,
4028
        'longname' => 'Western European Time',
4029
        'shortname' => 'WET',
4030
        'hasdst' => true,
4031
        'dstlongname' => 'Western European Summer Time',
4032
        'dstshortname' => 'WEST' ),
4033
    'GMT+00:00' => array(
4034
        'offset' => 0,
4035
        'longname' => 'GMT+00:00',
4036
        'shortname' => 'GMT+00:00',
4037
        'hasdst' => false ),
4038
    'Coordinated Universal Time' => array(
4039
        'offset' => 0,
4040
        'longname' => 'Coordinated Universal Time',
4041
        'shortname' => 'UTC',
4042
        'hasdst' => false ),
4043
    'Central European Time' => array(
4044
        'offset' => 3600000,
4045
        'longname' => 'Central European Time',
4046
        'shortname' => 'CET',
4047
        'hasdst' => true,
4048
        'dstlongname' => 'Central European Summer Time',
4049
        'dstshortname' => 'CEST' ),
4050
    'Western African Time' => array(
4051
        'offset' => 3600000,
4052
        'longname' => 'Western African Time',
4053
        'shortname' => 'WAT',
4054
        'hasdst' => true,
4055
        'dstlongname' => 'Western African Summer Time',
4056
        'dstshortname' => 'WAST' ),
4057
    'GMT+01:00' => array(
4058
        'offset' => 3600000,
4059
        'longname' => 'GMT+01:00',
4060
        'shortname' => 'GMT+01:00',
4061
        'hasdst' => false ),
4062
    'Middle Europe Time' => array(
4063
        'offset' => 3600000,
4064
        'longname' => 'Middle Europe Time',
4065
        'shortname' => 'MET',
4066
        'hasdst' => true,
4067
        'dstlongname' => 'Middle Europe Summer Time',
4068
        'dstshortname' => 'MEST' ),
4069
    'Eastern European Time' => array(
4070
        'offset' => 7200000,
4071
        'longname' => 'Eastern European Time',
4072
        'shortname' => 'EET',
4073
        'hasdst' => true,
4074
        'dstlongname' => 'Eastern European Summer Time',
4075
        'dstshortname' => 'EEST' ),
4076
    'Central African Time' => array(
4077
        'offset' => 7200000,
4078
        'longname' => 'Central African Time',
4079
        'shortname' => 'CAT',
4080
        'hasdst' => false ),
4081
    'South Africa Standard Time' => array(
4082
        'offset' => 7200000,
4083
        'longname' => 'South Africa Standard Time',
4084
        'shortname' => 'SAST',
4085
        'hasdst' => false ),
4086
    'Israel Standard Time' => array(
4087
        'offset' => 7200000,
4088
        'longname' => 'Israel Standard Time',
4089
        'shortname' => 'IST',
4090
        'hasdst' => true,
4091
        'dstlongname' => 'Israel Daylight Time',
4092
        'dstshortname' => 'IDT' ),
4093
    'GMT+02:00' => array(
4094
        'offset' => 7200000,
4095
        'longname' => 'GMT+02:00',
4096
        'shortname' => 'GMT+02:00',
4097
        'hasdst' => false ),
4098
    'Eastern African Time' => array(
4099
        'offset' => 10800000,
4100
        'longname' => 'Eastern African Time',
4101
        'shortname' => 'EAT',
4102
        'hasdst' => false ),
4103
    'Syowa Time' => array(
4104
        'offset' => 10800000,
4105
        'longname' => 'Syowa Time',
4106
        'shortname' => 'SYOT',
4107
        'hasdst' => false ),
4108
    'Arabia Standard Time' => array(
4109
        'offset' => 10800000,
4110
        'longname' => 'Arabia Standard Time',
4111
        'shortname' => 'AST',
4112
        'hasdst' => false ),
4113
    'GMT+03:00' => array(
4114
        'offset' => 10800000,
4115
        'longname' => 'GMT+03:00',
4116
        'shortname' => 'GMT+03:00',
4117
        'hasdst' => false ),
4118
    'Moscow Standard Time' => array(
4119
        'offset' => 10800000,
4120
        'longname' => 'Moscow Standard Time',
4121
        'shortname' => 'MSK',
4122
        'hasdst' => true,
4123
        'dstlongname' => 'Moscow Daylight Time',
4124
        'dstshortname' => 'MSD' ),
4125
    'GMT+03:07' => array(
4126
        'offset' => 11224000,
4127
        'longname' => 'GMT+03:07',
4128
        'shortname' => 'GMT+03:07',
4129
        'hasdst' => false ),
4130
    'Iran Time' => array(
4131
        'offset' => 12600000,
4132
        'longname' => 'Iran Time',
4133
        'shortname' => 'IRT',
4134
        'hasdst' => true,
4135
        'dstlongname' => 'Iran Sumer Time',
4136
        'dstshortname' => 'IRST' ),
4137
    'Aqtau Time' => array(
4138
        'offset' => 14400000,
4139
        'longname' => 'Aqtau Time',
4140
        'shortname' => 'AQTT',
4141
        'hasdst' => true,
4142
        'dstlongname' => 'Aqtau Summer Time',
4143
        'dstshortname' => 'AQTST' ),
4144
    'Azerbaijan Time' => array(
4145
        'offset' => 14400000,
4146
        'longname' => 'Azerbaijan Time',
4147
        'shortname' => 'AZT',
4148
        'hasdst' => true,
4149
        'dstlongname' => 'Azerbaijan Summer Time',
4150
        'dstshortname' => 'AZST' ),
4151
    'Gulf Standard Time' => array(
4152
        'offset' => 14400000,
4153
        'longname' => 'Gulf Standard Time',
4154
        'shortname' => 'GST',
4155
        'hasdst' => false ),
4156
    'Georgia Time' => array(
4157
        'offset' => 14400000,
4158
        'longname' => 'Georgia Time',
4159
        'shortname' => 'GET',
4160
        'hasdst' => true,
4161
        'dstlongname' => 'Georgia Summer Time',
4162
        'dstshortname' => 'GEST' ),
4163
    'Armenia Time' => array(
4164
        'offset' => 14400000,
4165
        'longname' => 'Armenia Time',
4166
        'shortname' => 'AMT',
4167
        'hasdst' => true,
4168
        'dstlongname' => 'Armenia Summer Time',
4169
        'dstshortname' => 'AMST' ),
4170
    'GMT+04:00' => array(
4171
        'offset' => 14400000,
4172
        'longname' => 'GMT+04:00',
4173
        'shortname' => 'GMT+04:00',
4174
        'hasdst' => false ),
4175
    'Samara Time' => array(
4176
        'offset' => 14400000,
4177
        'longname' => 'Samara Time',
4178
        'shortname' => 'SAMT',
4179
        'hasdst' => true,
4180
        'dstlongname' => 'Samara Summer Time',
4181
        'dstshortname' => 'SAMST' ),
4182
    'Seychelles Time' => array(
4183
        'offset' => 14400000,
4184
        'longname' => 'Seychelles Time',
4185
        'shortname' => 'SCT',
4186
        'hasdst' => false ),
4187
    'Mauritius Time' => array(
4188
        'offset' => 14400000,
4189
        'longname' => 'Mauritius Time',
4190
        'shortname' => 'MUT',
4191
        'hasdst' => false ),
4192
    'Reunion Time' => array(
4193
        'offset' => 14400000,
4194
        'longname' => 'Reunion Time',
4195
        'shortname' => 'RET',
4196
        'hasdst' => false ),
4197
    'Afghanistan Time' => array(
4198
        'offset' => 16200000,
4199
        'longname' => 'Afghanistan Time',
4200
        'shortname' => 'AFT',
4201
        'hasdst' => false ),
4202
    'Aqtobe Time' => array(
4203
        'offset' => 18000000,
4204
        'longname' => 'Aqtobe Time',
4205
        'shortname' => 'AQTT',
4206
        'hasdst' => true,
4207
        'dstlongname' => 'Aqtobe Summer Time',
4208
        'dstshortname' => 'AQTST' ),
4209
    'Turkmenistan Time' => array(
4210
        'offset' => 18000000,
4211
        'longname' => 'Turkmenistan Time',
4212
        'shortname' => 'TMT',
4213
        'hasdst' => false ),
4214
    'Kirgizstan Time' => array(
4215
        'offset' => 18000000,
4216
        'longname' => 'Kirgizstan Time',
4217
        'shortname' => 'KGT',
4218
        'hasdst' => true,
4219
        'dstlongname' => 'Kirgizstan Summer Time',
4220
        'dstshortname' => 'KGST' ),
4221
    'Tajikistan Time' => array(
4222
        'offset' => 18000000,
4223
        'longname' => 'Tajikistan Time',
4224
        'shortname' => 'TJT',
4225
        'hasdst' => false ),
4226
    'Pakistan Time' => array(
4227
        'offset' => 18000000,
4228
        'longname' => 'Pakistan Time',
4229
        'shortname' => 'PKT',
4230
        'hasdst' => false ),
4231
    'Uzbekistan Time' => array(
4232
        'offset' => 18000000,
4233
        'longname' => 'Uzbekistan Time',
4234
        'shortname' => 'UZT',
4235
        'hasdst' => false ),
4236
    'Yekaterinburg Time' => array(
4237
        'offset' => 18000000,
4238
        'longname' => 'Yekaterinburg Time',
4239
        'shortname' => 'YEKT',
4240
        'hasdst' => true,
4241
        'dstlongname' => 'Yekaterinburg Summer Time',
4242
        'dstshortname' => 'YEKST' ),
4243
    'GMT+05:00' => array(
4244
        'offset' => 18000000,
4245
        'longname' => 'GMT+05:00',
4246
        'shortname' => 'GMT+05:00',
4247
        'hasdst' => false ),
4248
    'French Southern & Antarctic Lands Time' => array(
4249
        'offset' => 18000000,
4250
        'longname' => 'French Southern & Antarctic Lands Time',
4251
        'shortname' => 'TFT',
4252
        'hasdst' => false ),
4253
    'Maldives Time' => array(
4254
        'offset' => 18000000,
4255
        'longname' => 'Maldives Time',
4256
        'shortname' => 'MVT',
4257
        'hasdst' => false ),
4258
    'India Standard Time' => array(
4259
        'offset' => 19800000,
4260
        'longname' => 'India Standard Time',
4261
        'shortname' => 'IST',
4262
        'hasdst' => false ),
4263
    'Nepal Time' => array(
4264
        'offset' => 20700000,
4265
        'longname' => 'Nepal Time',
4266
        'shortname' => 'NPT',
4267
        'hasdst' => false ),
4268
    'Mawson Time' => array(
4269
        'offset' => 21600000,
4270
        'longname' => 'Mawson Time',
4271
        'shortname' => 'MAWT',
4272
        'hasdst' => false ),
4273
    'Vostok time' => array(
4274
        'offset' => 21600000,
4275
        'longname' => 'Vostok time',
4276
        'shortname' => 'VOST',
4277
        'hasdst' => false ),
4278
    'Alma-Ata Time' => array(
4279
        'offset' => 21600000,
4280
        'longname' => 'Alma-Ata Time',
4281
        'shortname' => 'ALMT',
4282
        'hasdst' => true,
4283
        'dstlongname' => 'Alma-Ata Summer Time',
4284
        'dstshortname' => 'ALMST' ),
4285
    'Sri Lanka Time' => array(
4286
        'offset' => 21600000,
4287
        'longname' => 'Sri Lanka Time',
4288
        'shortname' => 'LKT',
4289
        'hasdst' => false ),
4290
    'Bangladesh Time' => array(
4291
        'offset' => 21600000,
4292
        'longname' => 'Bangladesh Time',
4293
        'shortname' => 'BDT',
4294
        'hasdst' => false ),
4295
    'Novosibirsk Time' => array(
4296
        'offset' => 21600000,
4297
        'longname' => 'Novosibirsk Time',
4298
        'shortname' => 'NOVT',
4299
        'hasdst' => true,
4300
        'dstlongname' => 'Novosibirsk Summer Time',
4301
        'dstshortname' => 'NOVST' ),
4302
    'Omsk Time' => array(
4303
        'offset' => 21600000,
4304
        'longname' => 'Omsk Time',
4305
        'shortname' => 'OMST',
4306
        'hasdst' => true,
4307
        'dstlongname' => 'Omsk Summer Time',
4308
        'dstshortname' => 'OMSST' ),
4309
    'Bhutan Time' => array(
4310
        'offset' => 21600000,
4311
        'longname' => 'Bhutan Time',
4312
        'shortname' => 'BTT',
4313
        'hasdst' => false ),
4314
    'GMT+06:00' => array(
4315
        'offset' => 21600000,
4316
        'longname' => 'GMT+06:00',
4317
        'shortname' => 'GMT+06:00',
4318
        'hasdst' => false ),
4319
    'Indian Ocean Territory Time' => array(
4320
        'offset' => 21600000,
4321
        'longname' => 'Indian Ocean Territory Time',
4322
        'shortname' => 'IOT',
4323
        'hasdst' => false ),
4324
    'Myanmar Time' => array(
4325
        'offset' => 23400000,
4326
        'longname' => 'Myanmar Time',
4327
        'shortname' => 'MMT',
4328
        'hasdst' => false ),
4329
    'Cocos Islands Time' => array(
4330
        'offset' => 23400000,
4331
        'longname' => 'Cocos Islands Time',
4332
        'shortname' => 'CCT',
4333
        'hasdst' => false ),
4334
    'Davis Time' => array(
4335
        'offset' => 25200000,
4336
        'longname' => 'Davis Time',
4337
        'shortname' => 'DAVT',
4338
        'hasdst' => false ),
4339
    'Indochina Time' => array(
4340
        'offset' => 25200000,
4341
        'longname' => 'Indochina Time',
4342
        'shortname' => 'ICT',
4343
        'hasdst' => false ),
4344
    'Hovd Time' => array(
4345
        'offset' => 25200000,
4346
        'longname' => 'Hovd Time',
4347
        'shortname' => 'HOVT',
4348
        'hasdst' => false ),
4349
    'West Indonesia Time' => array(
4350
        'offset' => 25200000,
4351
        'longname' => 'West Indonesia Time',
4352
        'shortname' => 'WIT',
4353
        'hasdst' => false ),
4354
    'Krasnoyarsk Time' => array(
4355
        'offset' => 25200000,
4356
        'longname' => 'Krasnoyarsk Time',
4357
        'shortname' => 'KRAT',
4358
        'hasdst' => true,
4359
        'dstlongname' => 'Krasnoyarsk Summer Time',
4360
        'dstshortname' => 'KRAST' ),
4361
    'GMT+07:00' => array(
4362
        'offset' => 25200000,
4363
        'longname' => 'GMT+07:00',
4364
        'shortname' => 'GMT+07:00',
4365
        'hasdst' => false ),
4366
    'Christmas Island Time' => array(
4367
        'offset' => 25200000,
4368
        'longname' => 'Christmas Island Time',
4369
        'shortname' => 'CXT',
4370
        'hasdst' => false ),
4371
    'Western Standard Time (Australia)' => array(
4372
        'offset' => 28800000,
4373
        'longname' => 'Western Standard Time (Australia)',
4374
        'shortname' => 'WST',
4375
        'hasdst' => false ),
4376
    'Brunei Time' => array(
4377
        'offset' => 28800000,
4378
        'longname' => 'Brunei Time',
4379
        'shortname' => 'BNT',
4380
        'hasdst' => false ),
4381
    'China Standard Time' => array(
4382
        'offset' => 28800000,
4383
        'longname' => 'China Standard Time',
4384
        'shortname' => 'CST',
4385
        'hasdst' => false ),
4386
    'Hong Kong Time' => array(
4387
        'offset' => 28800000,
4388
        'longname' => 'Hong Kong Time',
4389
        'shortname' => 'HKT',
4390
        'hasdst' => false ),
4391
    'Irkutsk Time' => array(
4392
        'offset' => 28800000,
4393
        'longname' => 'Irkutsk Time',
4394
        'shortname' => 'IRKT',
4395
        'hasdst' => true,
4396
        'dstlongname' => 'Irkutsk Summer Time',
4397
        'dstshortname' => 'IRKST' ),
4398
    'Malaysia Time' => array(
4399
        'offset' => 28800000,
4400
        'longname' => 'Malaysia Time',
4401
        'shortname' => 'MYT',
4402
        'hasdst' => false ),
4403
    'Philippines Time' => array(
4404
        'offset' => 28800000,
4405
        'longname' => 'Philippines Time',
4406
        'shortname' => 'PHT',
4407
        'hasdst' => false ),
4408
    'Singapore Time' => array(
4409
        'offset' => 28800000,
4410
        'longname' => 'Singapore Time',
4411
        'shortname' => 'SGT',
4412
        'hasdst' => false ),
4413
    'Central Indonesia Time' => array(
4414
        'offset' => 28800000,
4415
        'longname' => 'Central Indonesia Time',
4416
        'shortname' => 'CIT',
4417
        'hasdst' => false ),
4418
    'Ulaanbaatar Time' => array(
4419
        'offset' => 28800000,
4420
        'longname' => 'Ulaanbaatar Time',
4421
        'shortname' => 'ULAT',
4422
        'hasdst' => false ),
4423
    'GMT+08:00' => array(
4424
        'offset' => 28800000,
4425
        'longname' => 'GMT+08:00',
4426
        'shortname' => 'GMT+08:00',
4427
        'hasdst' => false ),
4428
    'Choibalsan Time' => array(
4429
        'offset' => 32400000,
4430
        'longname' => 'Choibalsan Time',
4431
        'shortname' => 'CHOT',
4432
        'hasdst' => false ),
4433
    'East Timor Time' => array(
4434
        'offset' => 32400000,
4435
        'longname' => 'East Timor Time',
4436
        'shortname' => 'TPT',
4437
        'hasdst' => false ),
4438
    'East Indonesia Time' => array(
4439
        'offset' => 32400000,
4440
        'longname' => 'East Indonesia Time',
4441
        'shortname' => 'EIT',
4442
        'hasdst' => false ),
4443
    'Korea Standard Time' => array(
4444
        'offset' => 32400000,
4445
        'longname' => 'Korea Standard Time',
4446
        'shortname' => 'KST',
4447
        'hasdst' => false ),
4448
    'Japan Standard Time' => array(
4449
        'offset' => 32400000,
4450
        'longname' => 'Japan Standard Time',
4451
        'shortname' => 'JST',
4452
        'hasdst' => false ),
4453
    'Yakutsk Time' => array(
4454
        'offset' => 32400000,
4455
        'longname' => 'Yakutsk Time',
4456
        'shortname' => 'YAKT',
4457
        'hasdst' => true,
4458
        'dstlongname' => 'Yaktsk Summer Time',
4459
        'dstshortname' => 'YAKST' ),
4460
    'GMT+09:00' => array(
4461
        'offset' => 32400000,
4462
        'longname' => 'GMT+09:00',
4463
        'shortname' => 'GMT+09:00',
4464
        'hasdst' => false ),
4465
    'Palau Time' => array(
4466
        'offset' => 32400000,
4467
        'longname' => 'Palau Time',
4468
        'shortname' => 'PWT',
4469
        'hasdst' => false ),
4470
    'Central Standard Time (Northern Territory)' => array(
4471
        'offset' => 34200000,
4472
        'longname' => 'Central Standard Time (Northern Territory)',
4473
        'shortname' => 'CST',
4474
        'hasdst' => false ),
4475
    'Central Standard Time (South Australia)' => array(
4476
        'offset' => 34200000,
4477
        'longname' => 'Central Standard Time (South Australia)',
4478
        'shortname' => 'CST',
4479
        'hasdst' => true,
4480
        'dstlongname' => 'Central Summer Time (South Australia)',
4481
        'dstshortname' => 'CST' ),
4482
    'Central Standard Time (South Australia/New South Wales)' => array(
4483
        'offset' => 34200000,
4484
        'longname' => 'Central Standard Time (South Australia/New South Wales)',
4485
        'shortname' => 'CST',
4486
        'hasdst' => true,
4487
        'dstlongname' => 'Central Summer Time (South Australia/New South Wales)',
4488
        'dstshortname' => 'CST' ),
4489
    'Eastern Standard Time (New South Wales)' => array(
4490
        'offset' => 36000000,
4491
        'longname' => 'Eastern Standard Time (New South Wales)',
4492
        'shortname' => 'EST',
4493
        'hasdst' => true,
4494
        'dstlongname' => 'Eastern Summer Time (New South Wales)',
4495
        'dstshortname' => 'EST' ),
4496
    'Dumont-d\'Urville Time' => array(
4497
        'offset' => 36000000,
4498
        'longname' => 'Dumont-d\'Urville Time',
4499
        'shortname' => 'DDUT',
4500
        'hasdst' => false ),
4501
    'Sakhalin Time' => array(
4502
        'offset' => 36000000,
4503
        'longname' => 'Sakhalin Time',
4504
        'shortname' => 'SAKT',
4505
        'hasdst' => true,
4506
        'dstlongname' => 'Sakhalin Summer Time',
4507
        'dstshortname' => 'SAKST' ),
4508
    'Vladivostok Time' => array(
4509
        'offset' => 36000000,
4510
        'longname' => 'Vladivostok Time',
4511
        'shortname' => 'VLAT',
4512
        'hasdst' => true,
4513
        'dstlongname' => 'Vladivostok Summer Time',
4514
        'dstshortname' => 'VLAST' ),
4515
    'Eastern Standard Time (Queensland)' => array(
4516
        'offset' => 36000000,
4517
        'longname' => 'Eastern Standard Time (Queensland)',
4518
        'shortname' => 'EST',
4519
        'hasdst' => false ),
4520
    'Eastern Standard Time (Tasmania)' => array(
4521
        'offset' => 36000000,
4522
        'longname' => 'Eastern Standard Time (Tasmania)',
4523
        'shortname' => 'EST',
4524
        'hasdst' => true,
4525
        'dstlongname' => 'Eastern Summer Time (Tasmania)',
4526
        'dstshortname' => 'EST' ),
4527
    'Eastern Standard Time (Victoria)' => array(
4528
        'offset' => 36000000,
4529
        'longname' => 'Eastern Standard Time (Victoria)',
4530
        'shortname' => 'EST',
4531
        'hasdst' => true,
4532
        'dstlongname' => 'Eastern Summer Time (Victoria)',
4533
        'dstshortname' => 'EST' ),
4534
    'GMT+10:00' => array(
4535
        'offset' => 36000000,
4536
        'longname' => 'GMT+10:00',
4537
        'shortname' => 'GMT+10:00',
4538
        'hasdst' => false ),
4539
    'Chamorro Standard Time' => array(
4540
        'offset' => 36000000,
4541
        'longname' => 'Chamorro Standard Time',
4542
        'shortname' => 'ChST',
4543
        'hasdst' => false ),
4544
    'Papua New Guinea Time' => array(
4545
        'offset' => 36000000,
4546
        'longname' => 'Papua New Guinea Time',
4547
        'shortname' => 'PGT',
4548
        'hasdst' => false ),
4549
    'Truk Time' => array(
4550
        'offset' => 36000000,
4551
        'longname' => 'Truk Time',
4552
        'shortname' => 'TRUT',
4553
        'hasdst' => false ),
4554
    'Yap Time' => array(
4555
        'offset' => 36000000,
4556
        'longname' => 'Yap Time',
4557
        'shortname' => 'YAPT',
4558
        'hasdst' => false ),
4559
    'Load Howe Standard Time' => array(
4560
        'offset' => 37800000,
4561
        'longname' => 'Load Howe Standard Time',
4562
        'shortname' => 'LHST',
4563
        'hasdst' => true,
4564
        'dstlongname' => 'Load Howe Summer Time',
4565
        'dstshortname' => 'LHST' ),
4566
    'Magadan Time' => array(
4567
        'offset' => 39600000,
4568
        'longname' => 'Magadan Time',
4569
        'shortname' => 'MAGT',
4570
        'hasdst' => true,
4571
        'dstlongname' => 'Magadan Summer Time',
4572
        'dstshortname' => 'MAGST' ),
4573
    'GMT+11:00' => array(
4574
        'offset' => 39600000,
4575
        'longname' => 'GMT+11:00',
4576
        'shortname' => 'GMT+11:00',
4577
        'hasdst' => false ),
4578
    'Vanuatu Time' => array(
4579
        'offset' => 39600000,
4580
        'longname' => 'Vanuatu Time',
4581
        'shortname' => 'VUT',
4582
        'hasdst' => false ),
4583
    'Solomon Is. Time' => array(
4584
        'offset' => 39600000,
4585
        'longname' => 'Solomon Is. Time',
4586
        'shortname' => 'SBT',
4587
        'hasdst' => false ),
4588
    'Kosrae Time' => array(
4589
        'offset' => 39600000,
4590
        'longname' => 'Kosrae Time',
4591
        'shortname' => 'KOST',
4592
        'hasdst' => false ),
4593
    'New Caledonia Time' => array(
4594
        'offset' => 39600000,
4595
        'longname' => 'New Caledonia Time',
4596
        'shortname' => 'NCT',
4597
        'hasdst' => false ),
4598
    'Ponape Time' => array(
4599
        'offset' => 39600000,
4600
        'longname' => 'Ponape Time',
4601
        'shortname' => 'PONT',
4602
        'hasdst' => false ),
4603
    'Norfolk Time' => array(
4604
        'offset' => 41400000,
4605
        'longname' => 'Norfolk Time',
4606
        'shortname' => 'NFT',
4607
        'hasdst' => false ),
4608
    'New Zealand Standard Time' => array(
4609
        'offset' => 43200000,
4610
        'longname' => 'New Zealand Standard Time',
4611
        'shortname' => 'NZST',
4612
        'hasdst' => true,
4613
        'dstlongname' => 'New Zealand Daylight Time',
4614
        'dstshortname' => 'NZDT' ),
4615
    'Anadyr Time' => array(
4616
        'offset' => 43200000,
4617
        'longname' => 'Anadyr Time',
4618
        'shortname' => 'ANAT',
4619
        'hasdst' => true,
4620
        'dstlongname' => 'Anadyr Summer Time',
4621
        'dstshortname' => 'ANAST' ),
4622
    'Petropavlovsk-Kamchatski Time' => array(
4623
        'offset' => 43200000,
4624
        'longname' => 'Petropavlovsk-Kamchatski Time',
4625
        'shortname' => 'PETT',
4626
        'hasdst' => true,
4627
        'dstlongname' => 'Petropavlovsk-Kamchatski Summer Time',
4628
        'dstshortname' => 'PETST' ),
4629
    'GMT+12:00' => array(
4630
        'offset' => 43200000,
4631
        'longname' => 'GMT+12:00',
4632
        'shortname' => 'GMT+12:00',
4633
        'hasdst' => false ),
4634
    'Marshall Islands Time' => array(
4635
        'offset' => 43200000,
4636
        'longname' => 'Marshall Islands Time',
4637
        'shortname' => 'MHT',
4638
        'hasdst' => false ),
4639
    'Fiji Time' => array(
4640
        'offset' => 43200000,
4641
        'longname' => 'Fiji Time',
4642
        'shortname' => 'FJT',
4643
        'hasdst' => false ),
4644
    'Tuvalu Time' => array(
4645
        'offset' => 43200000,
4646
        'longname' => 'Tuvalu Time',
4647
        'shortname' => 'TVT',
4648
        'hasdst' => false ),
4649
    'Nauru Time' => array(
4650
        'offset' => 43200000,
4651
        'longname' => 'Nauru Time',
4652
        'shortname' => 'NRT',
4653
        'hasdst' => false ),
4654
    'Gilbert Is. Time' => array(
4655
        'offset' => 43200000,
4656
        'longname' => 'Gilbert Is. Time',
4657
        'shortname' => 'GILT',
4658
        'hasdst' => false ),
4659
    'Wake Time' => array(
4660
        'offset' => 43200000,
4661
        'longname' => 'Wake Time',
4662
        'shortname' => 'WAKT',
4663
        'hasdst' => false ),
4664
    'Wallis & Futuna Time' => array(
4665
        'offset' => 43200000,
4666
        'longname' => 'Wallis & Futuna Time',
4667
        'shortname' => 'WFT',
4668
        'hasdst' => false ),
4669
    'Chatham Standard Time' => array(
4670
        'offset' => 45900000,
4671
        'longname' => 'Chatham Standard Time',
4672
        'shortname' => 'CHAST',
4673
        'hasdst' => true,
4674
        'dstlongname' => 'Chatham Daylight Time',
4675
        'dstshortname' => 'CHADT' ),
4676
    'GMT+13:00' => array(
4677
        'offset' => 46800000,
4678
        'longname' => 'GMT+13:00',
4679
        'shortname' => 'GMT+13:00',
4680
        'hasdst' => false ),
4681
    'Phoenix Is. Time' => array(
4682
        'offset' => 46800000,
4683
        'longname' => 'Phoenix Is. Time',
4684
        'shortname' => 'PHOT',
4685
        'hasdst' => false ),
4686
    'Tonga Time' => array(
4687
        'offset' => 46800000,
4688
        'longname' => 'Tonga Time',
4689
        'shortname' => 'TOT',
4690
        'hasdst' => false ),
4691
    'GMT+14:00' => array(
4692
        'offset' => 50400000,
4693
        'longname' => 'GMT+14:00',
4694
        'shortname' => 'GMT+14:00',
4695
        'hasdst' => false ),
4696
    'Line Is. Time' => array(
4697
        'offset' => 50400000,
4698
        'longname' => 'Line Is. Time',
4699
        'shortname' => 'LINT',
4700
        'hasdst' => false ),
4701
);
4702
 
4703
/**
4704
 * Initialize default timezone
4705
 *
4706
 * First try _DATE_TIMEZONE_DEFAULT global, then PHP_TZ environment var,
4707
 * then TZ environment var
4708
 */
4709
if(isset($GLOBALS['_DATE_TIMEZONE_DEFAULT'])
4710
   && Date_TimeZone::isValidID($GLOBALS['_DATE_TIMEZONE_DEFAULT']))
4711
{
4712
    Date_TimeZone::setDefault($GLOBALS['_DATE_TIMEZONE_DEFAULT']);
4713
} elseif (getenv('PHP_TZ') && Date_TimeZone::isValidID(getenv('PHP_TZ'))) {
4714
    Date_TimeZone::setDefault(getenv('PHP_TZ'));
4715
} elseif (getenv('TZ') && Date_TimeZone::isValidID(getenv('TZ'))) {
4716
    Date_TimeZone::setDefault(getenv('TZ'));
4717
} elseif (Date_TimeZone::isValidID(date('T'))) {
4718
    Date_TimeZone::setDefault(date('T'));
4719
} else {
4720
    Date_TimeZone::setDefault('UTC');
4721
}
4722
 
4723
/*
4724
 * Local variables:
4725
 * mode: php
4726
 * tab-width: 4
4727
 * c-basic-offset: 4
4728
 * c-hanging-comment-ender-p: nil
4729
 * End:
4730
 */
4731
?>