TimeZone.php 124 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644
  1. <?php
  2. //
  3. // +----------------------------------------------------------------------+
  4. // | PHP Version 4 |
  5. // +----------------------------------------------------------------------+
  6. // | Copyright (c) 1997-2003 The PHP Group |
  7. // +----------------------------------------------------------------------+
  8. // | This source file is subject to version 2.02 of the PHP license, |
  9. // | that is bundled with this package in the file LICENSE, and is |
  10. // | available at through the world-wide-web at |
  11. // | http://www.php.net/license/2_02.txt. |
  12. // | If you did not receive a copy of the PHP license and are unable to |
  13. // | obtain it through the world-wide-web, please send a note to |
  14. // | license@php.net so we can mail you a copy immediately. |
  15. // +----------------------------------------------------------------------+
  16. // | Authors: Baba Buehler <baba@babaz.com> |
  17. // | |
  18. // +----------------------------------------------------------------------+
  19. //
  20. // $Id: TimeZone.php,v 1.3 2003/01/04 11:54:54 mj Exp $
  21. //
  22. // Date_TimeZone Class
  23. //
  24. /**
  25. * TimeZone representation class, along with time zone information data.
  26. *
  27. * TimeZone representation class, along with time zone information data.
  28. * The default timezone is set from the first valid timezone id found
  29. * in one of the following places, in this order: <br>
  30. * 1) global $_DATE_TIMEZONE_DEFAULT<br>
  31. * 2) system environment variable PHP_TZ<br>
  32. * 3) system environment variable TZ<br>
  33. * 4) the result of date('T')<br>
  34. * If no valid timezone id is found, the default timezone is set to 'UTC'.
  35. * You may also manually set the default timezone by passing a valid id to
  36. * Date_TimeZone::setDefault().<br>
  37. *
  38. * This class includes time zone data (from zoneinfo) in the form of a global array, $_DATE_TIMEZONE_DATA.
  39. *
  40. *
  41. * @author Baba Buehler <baba@babaz.com>
  42. * @package Date
  43. * @access public
  44. * @version 1.0
  45. */
  46. class Date_TimeZone
  47. {
  48. /**
  49. * Time Zone ID of this time zone
  50. * @var string
  51. */
  52. var $id;
  53. /**
  54. * Long Name of this time zone (ie Central Standard Time)
  55. * @var string
  56. */
  57. var $longname;
  58. /**
  59. * Short Name of this time zone (ie CST)
  60. * @var string
  61. */
  62. var $shortname;
  63. /**
  64. * true if this time zone observes daylight savings time
  65. * @var boolean
  66. */
  67. var $hasdst;
  68. /**
  69. * DST Long Name of this time zone
  70. * @var string
  71. */
  72. var $dstlongname;
  73. /**
  74. * DST Short Name of this timezone
  75. * @var string
  76. */
  77. var $dstshortname;
  78. /**
  79. * offset, in milliseconds, of this timezone
  80. * @var int
  81. */
  82. var $offset;
  83. /**
  84. * System Default Time Zone
  85. * @var object Date_TimeZone
  86. */
  87. var $default;
  88. /**
  89. * Constructor
  90. *
  91. * Creates a new Date::TimeZone object, representing the time zone
  92. * specified in $id. If the supplied ID is invalid, the created
  93. * time zone is UTC.
  94. *
  95. * @access public
  96. * @param string $id the time zone id
  97. * @return object Date_TimeZone the new Date_TimeZone object
  98. */
  99. function Date_TimeZone($id)
  100. {
  101. global $_DATE_TIMEZONE_DATA;
  102. if(Date_TimeZone::isValidID($id)) {
  103. $this->id = $id;
  104. $this->longname = $_DATE_TIMEZONE_DATA[$id]['longname'];
  105. $this->shortname = $_DATE_TIMEZONE_DATA[$id]['shortname'];
  106. $this->offset = $_DATE_TIMEZONE_DATA[$id]['offset'];
  107. if($_DATE_TIMEZONE_DATA[$id]['hasdst']) {
  108. $this->hasdst = true;
  109. $this->dstlongname = $_DATE_TIMEZONE_DATA[$id]['dstlongname'];
  110. $this->dstshortname = $_DATE_TIMEZONE_DATA[$id]['dstshortname'];
  111. } else {
  112. $this->hasdst = false;
  113. $this->dstlongname = $this->longname;
  114. $this->dstshortname = $this->shortname;
  115. }
  116. } else {
  117. $this->id = 'UTC';
  118. $this->longname = $_DATE_TIMEZONE_DATA[$this->id]['longname'];
  119. $this->shortname = $_DATE_TIMEZONE_DATA[$this->id]['shortname'];
  120. $this->hasdst = $_DATE_TIMEZONE_DATA[$this->id]['hasdst'];
  121. $this->offset = $_DATE_TIMEZONE_DATA[$this->id]['offset'];
  122. }
  123. }
  124. /**
  125. * Return a TimeZone object representing the system default time zone
  126. *
  127. * Return a TimeZone object representing the system default time zone,
  128. * which is initialized during the loading of TimeZone.php.
  129. *
  130. * @access public
  131. * @return object Date_TimeZone the default time zone
  132. */
  133. function getDefault()
  134. {
  135. global $default;
  136. return new Date_TimeZone($default);
  137. }
  138. /**
  139. * Sets the system default time zone to the time zone in $id
  140. *
  141. * Sets the system default time zone to the time zone in $id
  142. *
  143. * @access public
  144. * @param string $id the time zone id to use
  145. */
  146. function setDefault($id)
  147. {
  148. global $default;
  149. if(Date_TimeZone::isValidID($id)) {
  150. $default = $id;
  151. }
  152. }
  153. /**
  154. * Tests if given id is represented in the $_DATE_TIMEZONE_DATA time zone data
  155. *
  156. * Tests if given id is represented in the $_DATE_TIMEZONE_DATA time zone data
  157. *
  158. * @access public
  159. * @param string $id the id to test
  160. * @return boolean true if the supplied ID is valid
  161. */
  162. function isValidID($id)
  163. {
  164. global $_DATE_TIMEZONE_DATA;
  165. if(isset($_DATE_TIMEZONE_DATA[$id])) {
  166. return true;
  167. } else {
  168. return false;
  169. }
  170. }
  171. /**
  172. * Is this time zone equal to another
  173. *
  174. * Tests to see if this time zone is equal (ids match)
  175. * to a given Date_TimeZone object.
  176. *
  177. * @access public
  178. * @param object Date_TimeZone $tz the timezone to test
  179. * @return boolean true if this time zone is equal to the supplied time zone
  180. */
  181. function isEqual($tz)
  182. {
  183. if(strcasecmp($this->id, $tz->id) == 0) {
  184. return true;
  185. } else {
  186. return false;
  187. }
  188. }
  189. /**
  190. * Is this time zone equivalent to another
  191. *
  192. * Tests to see if this time zone is equivalent to
  193. * a given time zone object. Equivalence in this context
  194. * is defined by the two time zones having an equal raw
  195. * offset and an equal setting of "hasdst". This is not true
  196. * equivalence, as the two time zones may have different rules
  197. * for the observance of DST, but this implementation does not
  198. * know DST rules.
  199. *
  200. * @access public
  201. * @param object Date_TimeZone $tz the timezone object to test
  202. * @return boolean true if this time zone is equivalent to the supplied time zone
  203. */
  204. function isEquivalent($tz)
  205. {
  206. if($this->offset == $tz->offset && $this->hasdst == $tz->hasdst) {
  207. return true;
  208. } else {
  209. return false;
  210. }
  211. }
  212. /**
  213. * Returns true if this zone observes daylight savings time
  214. *
  215. * Returns true if this zone observes daylight savings time
  216. *
  217. * @access public
  218. * @return boolean true if this time zone has DST
  219. */
  220. function hasDaylightTime()
  221. {
  222. return $this->hasdst;
  223. }
  224. /**
  225. * Is the given date/time in DST for this time zone
  226. *
  227. * Attempts to determine if a given Date object represents a date/time
  228. * that is in DST for this time zone. WARNINGS: this basically attempts to
  229. * "trick" the system into telling us if we're in DST for a given time zone.
  230. * This uses putenv() which may not work in safe mode, and relies on unix time
  231. * which is only valid for dates from 1970 to ~2038. This relies on the
  232. * underlying OS calls, so it may not work on Windows or on a system where
  233. * zoneinfo is not installed or configured properly.
  234. *
  235. * @access public
  236. * @param object Date $date the date/time to test
  237. * @return boolean true if this date is in DST for this time zone
  238. */
  239. function inDaylightTime($date)
  240. {
  241. $env_tz = "";
  242. if(getenv("TZ")) {
  243. $env_tz = getenv("TZ");
  244. }
  245. putenv("TZ=".$this->id);
  246. $ltime = localtime($date->getTime(), true);
  247. putenv("TZ=".$env_tz);
  248. return $ltime['tm_isdst'];
  249. }
  250. /**
  251. * Get the DST offset for this time zone
  252. *
  253. * Returns the DST offset of this time zone, in milliseconds,
  254. * if the zone observes DST, zero otherwise. Currently the
  255. * DST offset is hard-coded to one hour.
  256. *
  257. * @access public
  258. * @return int the DST offset, in milliseconds or zero if the zone does not observe DST
  259. */
  260. function getDSTSavings()
  261. {
  262. if($this->hasdst) {
  263. return 3600000;
  264. } else {
  265. return 0;
  266. }
  267. }
  268. /**
  269. * Get the DST-corrected offset to UTC for the given date
  270. *
  271. * Attempts to get the offset to UTC for a given date/time, taking into
  272. * account daylight savings time, if the time zone observes it and if
  273. * it is in effect. Please see the WARNINGS on Date::TimeZone::inDaylightTime().
  274. *
  275. *
  276. * @access public
  277. * @param object Date $date the Date to test
  278. * @return int the corrected offset to UTC in milliseconds
  279. */
  280. function getOffset($date)
  281. {
  282. if($this->inDaylightTime($date)) {
  283. return $this->offset + $this->getDSTSavings();
  284. } else {
  285. return $this->offset;
  286. }
  287. }
  288. /**
  289. * Returns the list of valid time zone id strings
  290. *
  291. * Returns the list of valid time zone id strings
  292. *
  293. * @access public
  294. * @return mixed an array of strings with the valid time zone IDs
  295. */
  296. function getAvailableIDs()
  297. {
  298. global $_DATE_TIMEZONE_DATA;
  299. return array_keys($_DATE_TIMEZONE_DATA);
  300. }
  301. /**
  302. * Returns the id for this time zone
  303. *
  304. * Returns the time zone id for this time zone, i.e. "America/Chicago"
  305. *
  306. * @access public
  307. * @return string the id
  308. */
  309. function getID()
  310. {
  311. return $this->id;
  312. }
  313. /**
  314. * Returns the long name for this time zone
  315. *
  316. * Returns the long name for this time zone,
  317. * i.e. "Central Standard Time"
  318. *
  319. * @access public
  320. * @return string the long name
  321. */
  322. function getLongName()
  323. {
  324. return $this->longname;
  325. }
  326. /**
  327. * Returns the short name for this time zone
  328. *
  329. * Returns the short name for this time zone, i.e. "CST"
  330. *
  331. * @access public
  332. * @return string the short name
  333. */
  334. function getShortName()
  335. {
  336. return $this->shortname;
  337. }
  338. /**
  339. * Returns the DST long name for this time zone
  340. *
  341. * Returns the DST long name for this time zone, i.e. "Central Daylight Time"
  342. *
  343. * @access public
  344. * @return string the daylight savings time long name
  345. */
  346. function getDSTLongName()
  347. {
  348. return $this->dstlongname;
  349. }
  350. /**
  351. * Returns the DST short name for this time zone
  352. *
  353. * Returns the DST short name for this time zone, i.e. "CDT"
  354. *
  355. * @access public
  356. * @return string the daylight savings time short name
  357. */
  358. function getDSTShortName()
  359. {
  360. return $this->dstshortname;
  361. }
  362. /**
  363. * Returns the raw (non-DST-corrected) offset from UTC/GMT for this time zone
  364. *
  365. * Returns the raw (non-DST-corrected) offset from UTC/GMT for this time zone
  366. *
  367. * @access public
  368. * @return int the offset, in milliseconds
  369. */
  370. function getRawOffset()
  371. {
  372. return $this->offset;
  373. }
  374. } // Date_TimeZone
  375. //
  376. // Time Zone Data
  377. // offset is in miliseconds
  378. //
  379. $GLOBALS['_DATE_TIMEZONE_DATA'] = array(
  380. 'Etc/GMT+12' => array(
  381. 'offset' => -43200000,
  382. 'longname' => "GMT-12:00",
  383. 'shortname' => 'GMT-12:00',
  384. 'hasdst' => false ),
  385. 'Etc/GMT+11' => array(
  386. 'offset' => -39600000,
  387. 'longname' => "GMT-11:00",
  388. 'shortname' => 'GMT-11:00',
  389. 'hasdst' => false ),
  390. 'MIT' => array(
  391. 'offset' => -39600000,
  392. 'longname' => "West Samoa Time",
  393. 'shortname' => 'WST',
  394. 'hasdst' => false ),
  395. 'Pacific/Apia' => array(
  396. 'offset' => -39600000,
  397. 'longname' => "West Samoa Time",
  398. 'shortname' => 'WST',
  399. 'hasdst' => false ),
  400. 'Pacific/Midway' => array(
  401. 'offset' => -39600000,
  402. 'longname' => "Samoa Standard Time",
  403. 'shortname' => 'SST',
  404. 'hasdst' => false ),
  405. 'Pacific/Niue' => array(
  406. 'offset' => -39600000,
  407. 'longname' => "Niue Time",
  408. 'shortname' => 'NUT',
  409. 'hasdst' => false ),
  410. 'Pacific/Pago_Pago' => array(
  411. 'offset' => -39600000,
  412. 'longname' => "Samoa Standard Time",
  413. 'shortname' => 'SST',
  414. 'hasdst' => false ),
  415. 'Pacific/Samoa' => array(
  416. 'offset' => -39600000,
  417. 'longname' => "Samoa Standard Time",
  418. 'shortname' => 'SST',
  419. 'hasdst' => false ),
  420. 'US/Samoa' => array(
  421. 'offset' => -39600000,
  422. 'longname' => "Samoa Standard Time",
  423. 'shortname' => 'SST',
  424. 'hasdst' => false ),
  425. 'America/Adak' => array(
  426. 'offset' => -36000000,
  427. 'longname' => "Hawaii-Aleutian Standard Time",
  428. 'shortname' => 'HAST',
  429. 'hasdst' => true,
  430. 'dstlongname' => "Hawaii-Aleutian Daylight Time",
  431. 'dstshortname' => 'HADT' ),
  432. 'America/Atka' => array(
  433. 'offset' => -36000000,
  434. 'longname' => "Hawaii-Aleutian Standard Time",
  435. 'shortname' => 'HAST',
  436. 'hasdst' => true,
  437. 'dstlongname' => "Hawaii-Aleutian Daylight Time",
  438. 'dstshortname' => 'HADT' ),
  439. 'Etc/GMT+10' => array(
  440. 'offset' => -36000000,
  441. 'longname' => "GMT-10:00",
  442. 'shortname' => 'GMT-10:00',
  443. 'hasdst' => false ),
  444. 'HST' => array(
  445. 'offset' => -36000000,
  446. 'longname' => "Hawaii Standard Time",
  447. 'shortname' => 'HST',
  448. 'hasdst' => false ),
  449. 'Pacific/Fakaofo' => array(
  450. 'offset' => -36000000,
  451. 'longname' => "Tokelau Time",
  452. 'shortname' => 'TKT',
  453. 'hasdst' => false ),
  454. 'Pacific/Honolulu' => array(
  455. 'offset' => -36000000,
  456. 'longname' => "Hawaii Standard Time",
  457. 'shortname' => 'HST',
  458. 'hasdst' => false ),
  459. 'Pacific/Johnston' => array(
  460. 'offset' => -36000000,
  461. 'longname' => "Hawaii Standard Time",
  462. 'shortname' => 'HST',
  463. 'hasdst' => false ),
  464. 'Pacific/Rarotonga' => array(
  465. 'offset' => -36000000,
  466. 'longname' => "Cook Is. Time",
  467. 'shortname' => 'CKT',
  468. 'hasdst' => false ),
  469. 'Pacific/Tahiti' => array(
  470. 'offset' => -36000000,
  471. 'longname' => "Tahiti Time",
  472. 'shortname' => 'TAHT',
  473. 'hasdst' => false ),
  474. 'SystemV/HST10' => array(
  475. 'offset' => -36000000,
  476. 'longname' => "Hawaii Standard Time",
  477. 'shortname' => 'HST',
  478. 'hasdst' => false ),
  479. 'US/Aleutian' => array(
  480. 'offset' => -36000000,
  481. 'longname' => "Hawaii-Aleutian Standard Time",
  482. 'shortname' => 'HAST',
  483. 'hasdst' => true,
  484. 'dstlongname' => "Hawaii-Aleutian Daylight Time",
  485. 'dstshortname' => 'HADT' ),
  486. 'US/Hawaii' => array(
  487. 'offset' => -36000000,
  488. 'longname' => "Hawaii Standard Time",
  489. 'shortname' => 'HST',
  490. 'hasdst' => false ),
  491. 'Pacific/Marquesas' => array(
  492. 'offset' => -34200000,
  493. 'longname' => "Marquesas Time",
  494. 'shortname' => 'MART',
  495. 'hasdst' => false ),
  496. 'AST' => array(
  497. 'offset' => -32400000,
  498. 'longname' => "Alaska Standard Time",
  499. 'shortname' => 'AKST',
  500. 'hasdst' => true,
  501. 'dstlongname' => "Alaska Daylight Time",
  502. 'dstshortname' => 'AKDT' ),
  503. 'America/Anchorage' => array(
  504. 'offset' => -32400000,
  505. 'longname' => "Alaska Standard Time",
  506. 'shortname' => 'AKST',
  507. 'hasdst' => true,
  508. 'dstlongname' => "Alaska Daylight Time",
  509. 'dstshortname' => 'AKDT' ),
  510. 'America/Juneau' => array(
  511. 'offset' => -32400000,
  512. 'longname' => "Alaska Standard Time",
  513. 'shortname' => 'AKST',
  514. 'hasdst' => true,
  515. 'dstlongname' => "Alaska Daylight Time",
  516. 'dstshortname' => 'AKDT' ),
  517. 'America/Nome' => array(
  518. 'offset' => -32400000,
  519. 'longname' => "Alaska Standard Time",
  520. 'shortname' => 'AKST',
  521. 'hasdst' => true,
  522. 'dstlongname' => "Alaska Daylight Time",
  523. 'dstshortname' => 'AKDT' ),
  524. 'America/Yakutat' => array(
  525. 'offset' => -32400000,
  526. 'longname' => "Alaska Standard Time",
  527. 'shortname' => 'AKST',
  528. 'hasdst' => true,
  529. 'dstlongname' => "Alaska Daylight Time",
  530. 'dstshortname' => 'AKDT' ),
  531. 'Etc/GMT+9' => array(
  532. 'offset' => -32400000,
  533. 'longname' => "GMT-09:00",
  534. 'shortname' => 'GMT-09:00',
  535. 'hasdst' => false ),
  536. 'Pacific/Gambier' => array(
  537. 'offset' => -32400000,
  538. 'longname' => "Gambier Time",
  539. 'shortname' => 'GAMT',
  540. 'hasdst' => false ),
  541. 'SystemV/YST9' => array(
  542. 'offset' => -32400000,
  543. 'longname' => "Gambier Time",
  544. 'shortname' => 'GAMT',
  545. 'hasdst' => false ),
  546. 'SystemV/YST9YDT' => array(
  547. 'offset' => -32400000,
  548. 'longname' => "Alaska Standard Time",
  549. 'shortname' => 'AKST',
  550. 'hasdst' => true,
  551. 'dstlongname' => "Alaska Daylight Time",
  552. 'dstshortname' => 'AKDT' ),
  553. 'US/Alaska' => array(
  554. 'offset' => -32400000,
  555. 'longname' => "Alaska Standard Time",
  556. 'shortname' => 'AKST',
  557. 'hasdst' => true,
  558. 'dstlongname' => "Alaska Daylight Time",
  559. 'dstshortname' => 'AKDT' ),
  560. 'America/Dawson' => array(
  561. 'offset' => -28800000,
  562. 'longname' => "Pacific Standard Time",
  563. 'shortname' => 'PST',
  564. 'hasdst' => true,
  565. 'dstlongname' => "Pacific Daylight Time",
  566. 'dstshortname' => 'PDT' ),
  567. 'America/Ensenada' => array(
  568. 'offset' => -28800000,
  569. 'longname' => "Pacific Standard Time",
  570. 'shortname' => 'PST',
  571. 'hasdst' => true,
  572. 'dstlongname' => "Pacific Daylight Time",
  573. 'dstshortname' => 'PDT' ),
  574. 'America/Los_Angeles' => array(
  575. 'offset' => -28800000,
  576. 'longname' => "Pacific Standard Time",
  577. 'shortname' => 'PST',
  578. 'hasdst' => true,
  579. 'dstlongname' => "Pacific Daylight Time",
  580. 'dstshortname' => 'PDT' ),
  581. 'America/Tijuana' => array(
  582. 'offset' => -28800000,
  583. 'longname' => "Pacific Standard Time",
  584. 'shortname' => 'PST',
  585. 'hasdst' => true,
  586. 'dstlongname' => "Pacific Daylight Time",
  587. 'dstshortname' => 'PDT' ),
  588. 'America/Vancouver' => array(
  589. 'offset' => -28800000,
  590. 'longname' => "Pacific Standard Time",
  591. 'shortname' => 'PST',
  592. 'hasdst' => true,
  593. 'dstlongname' => "Pacific Daylight Time",
  594. 'dstshortname' => 'PDT' ),
  595. 'America/Whitehorse' => array(
  596. 'offset' => -28800000,
  597. 'longname' => "Pacific Standard Time",
  598. 'shortname' => 'PST',
  599. 'hasdst' => true,
  600. 'dstlongname' => "Pacific Daylight Time",
  601. 'dstshortname' => 'PDT' ),
  602. 'Canada/Pacific' => array(
  603. 'offset' => -28800000,
  604. 'longname' => "Pacific Standard Time",
  605. 'shortname' => 'PST',
  606. 'hasdst' => true,
  607. 'dstlongname' => "Pacific Daylight Time",
  608. 'dstshortname' => 'PDT' ),
  609. 'Canada/Yukon' => array(
  610. 'offset' => -28800000,
  611. 'longname' => "Pacific Standard Time",
  612. 'shortname' => 'PST',
  613. 'hasdst' => true,
  614. 'dstlongname' => "Pacific Daylight Time",
  615. 'dstshortname' => 'PDT' ),
  616. 'Etc/GMT+8' => array(
  617. 'offset' => -28800000,
  618. 'longname' => "GMT-08:00",
  619. 'shortname' => 'GMT-08:00',
  620. 'hasdst' => false ),
  621. 'Mexico/BajaNorte' => array(
  622. 'offset' => -28800000,
  623. 'longname' => "Pacific Standard Time",
  624. 'shortname' => 'PST',
  625. 'hasdst' => true,
  626. 'dstlongname' => "Pacific Daylight Time",
  627. 'dstshortname' => 'PDT' ),
  628. 'PST' => array(
  629. 'offset' => -28800000,
  630. 'longname' => "Pacific Standard Time",
  631. 'shortname' => 'PST',
  632. 'hasdst' => true,
  633. 'dstlongname' => "Pacific Daylight Time",
  634. 'dstshortname' => 'PDT' ),
  635. 'PST8PDT' => array(
  636. 'offset' => -28800000,
  637. 'longname' => "Pacific Standard Time",
  638. 'shortname' => 'PST',
  639. 'hasdst' => true,
  640. 'dstlongname' => "Pacific Daylight Time",
  641. 'dstshortname' => 'PDT' ),
  642. 'Pacific/Pitcairn' => array(
  643. 'offset' => -28800000,
  644. 'longname' => "Pitcairn Standard Time",
  645. 'shortname' => 'PST',
  646. 'hasdst' => false ),
  647. 'SystemV/PST8' => array(
  648. 'offset' => -28800000,
  649. 'longname' => "Pitcairn Standard Time",
  650. 'shortname' => 'PST',
  651. 'hasdst' => false ),
  652. 'SystemV/PST8PDT' => array(
  653. 'offset' => -28800000,
  654. 'longname' => "Pacific Standard Time",
  655. 'shortname' => 'PST',
  656. 'hasdst' => true,
  657. 'dstlongname' => "Pacific Daylight Time",
  658. 'dstshortname' => 'PDT' ),
  659. 'US/Pacific' => array(
  660. 'offset' => -28800000,
  661. 'longname' => "Pacific Standard Time",
  662. 'shortname' => 'PST',
  663. 'hasdst' => true,
  664. 'dstlongname' => "Pacific Daylight Time",
  665. 'dstshortname' => 'PDT' ),
  666. 'US/Pacific-New' => 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/Boise' => array(
  674. 'offset' => -25200000,
  675. 'longname' => "Mountain Standard Time",
  676. 'shortname' => 'MST',
  677. 'hasdst' => true,
  678. 'dstlongname' => "Mountain Daylight Time",
  679. 'dstshortname' => 'MDT' ),
  680. 'America/Cambridge_Bay' => array(
  681. 'offset' => -25200000,
  682. 'longname' => "Mountain Standard Time",
  683. 'shortname' => 'MST',
  684. 'hasdst' => true,
  685. 'dstlongname' => "Mountain Daylight Time",
  686. 'dstshortname' => 'MDT' ),
  687. 'America/Chihuahua' => array(
  688. 'offset' => -25200000,
  689. 'longname' => "Mountain Standard Time",
  690. 'shortname' => 'MST',
  691. 'hasdst' => true,
  692. 'dstlongname' => "Mountain Daylight Time",
  693. 'dstshortname' => 'MDT' ),
  694. 'America/Dawson_Creek' => array(
  695. 'offset' => -25200000,
  696. 'longname' => "Mountain Standard Time",
  697. 'shortname' => 'MST',
  698. 'hasdst' => false ),
  699. 'America/Denver' => array(
  700. 'offset' => -25200000,
  701. 'longname' => "Mountain Standard Time",
  702. 'shortname' => 'MST',
  703. 'hasdst' => true,
  704. 'dstlongname' => "Mountain Daylight Time",
  705. 'dstshortname' => 'MDT' ),
  706. 'America/Edmonton' => array(
  707. 'offset' => -25200000,
  708. 'longname' => "Mountain Standard Time",
  709. 'shortname' => 'MST',
  710. 'hasdst' => true,
  711. 'dstlongname' => "Mountain Daylight Time",
  712. 'dstshortname' => 'MDT' ),
  713. 'America/Hermosillo' => array(
  714. 'offset' => -25200000,
  715. 'longname' => "Mountain Standard Time",
  716. 'shortname' => 'MST',
  717. 'hasdst' => false ),
  718. 'America/Inuvik' => array(
  719. 'offset' => -25200000,
  720. 'longname' => "Mountain Standard Time",
  721. 'shortname' => 'MST',
  722. 'hasdst' => true,
  723. 'dstlongname' => "Mountain Daylight Time",
  724. 'dstshortname' => 'MDT' ),
  725. 'America/Mazatlan' => array(
  726. 'offset' => -25200000,
  727. 'longname' => "Mountain Standard Time",
  728. 'shortname' => 'MST',
  729. 'hasdst' => true,
  730. 'dstlongname' => "Mountain Daylight Time",
  731. 'dstshortname' => 'MDT' ),
  732. 'America/Phoenix' => array(
  733. 'offset' => -25200000,
  734. 'longname' => "Mountain Standard Time",
  735. 'shortname' => 'MST',
  736. 'hasdst' => false ),
  737. 'America/Shiprock' => array(
  738. 'offset' => -25200000,
  739. 'longname' => "Mountain Standard Time",
  740. 'shortname' => 'MST',
  741. 'hasdst' => true,
  742. 'dstlongname' => "Mountain Daylight Time",
  743. 'dstshortname' => 'MDT' ),
  744. 'America/Yellowknife' => array(
  745. 'offset' => -25200000,
  746. 'longname' => "Mountain Standard Time",
  747. 'shortname' => 'MST',
  748. 'hasdst' => true,
  749. 'dstlongname' => "Mountain Daylight Time",
  750. 'dstshortname' => 'MDT' ),
  751. 'Canada/Mountain' => array(
  752. 'offset' => -25200000,
  753. 'longname' => "Mountain Standard Time",
  754. 'shortname' => 'MST',
  755. 'hasdst' => true,
  756. 'dstlongname' => "Mountain Daylight Time",
  757. 'dstshortname' => 'MDT' ),
  758. 'Etc/GMT+7' => array(
  759. 'offset' => -25200000,
  760. 'longname' => "GMT-07:00",
  761. 'shortname' => 'GMT-07:00',
  762. 'hasdst' => false ),
  763. 'MST' => array(
  764. 'offset' => -25200000,
  765. 'longname' => "Mountain Standard Time",
  766. 'shortname' => 'MST',
  767. 'hasdst' => true,
  768. 'dstlongname' => "Mountain Daylight Time",
  769. 'dstshortname' => 'MDT' ),
  770. 'MST7MDT' => array(
  771. 'offset' => -25200000,
  772. 'longname' => "Mountain Standard Time",
  773. 'shortname' => 'MST',
  774. 'hasdst' => true,
  775. 'dstlongname' => "Mountain Daylight Time",
  776. 'dstshortname' => 'MDT' ),
  777. 'Mexico/BajaSur' => array(
  778. 'offset' => -25200000,
  779. 'longname' => "Mountain Standard Time",
  780. 'shortname' => 'MST',
  781. 'hasdst' => true,
  782. 'dstlongname' => "Mountain Daylight Time",
  783. 'dstshortname' => 'MDT' ),
  784. 'Navajo' => array(
  785. 'offset' => -25200000,
  786. 'longname' => "Mountain Standard Time",
  787. 'shortname' => 'MST',
  788. 'hasdst' => true,
  789. 'dstlongname' => "Mountain Daylight Time",
  790. 'dstshortname' => 'MDT' ),
  791. 'PNT' => array(
  792. 'offset' => -25200000,
  793. 'longname' => "Mountain Standard Time",
  794. 'shortname' => 'MST',
  795. 'hasdst' => false ),
  796. 'SystemV/MST7' => array(
  797. 'offset' => -25200000,
  798. 'longname' => "Mountain Standard Time",
  799. 'shortname' => 'MST',
  800. 'hasdst' => false ),
  801. 'SystemV/MST7MDT' => array(
  802. 'offset' => -25200000,
  803. 'longname' => "Mountain Standard Time",
  804. 'shortname' => 'MST',
  805. 'hasdst' => true,
  806. 'dstlongname' => "Mountain Daylight Time",
  807. 'dstshortname' => 'MDT' ),
  808. 'US/Arizona' => array(
  809. 'offset' => -25200000,
  810. 'longname' => "Mountain Standard Time",
  811. 'shortname' => 'MST',
  812. 'hasdst' => false ),
  813. 'US/Mountain' => array(
  814. 'offset' => -25200000,
  815. 'longname' => "Mountain Standard Time",
  816. 'shortname' => 'MST',
  817. 'hasdst' => true,
  818. 'dstlongname' => "Mountain Daylight Time",
  819. 'dstshortname' => 'MDT' ),
  820. 'America/Belize' => array(
  821. 'offset' => -21600000,
  822. 'longname' => "Central Standard Time",
  823. 'shortname' => 'CST',
  824. 'hasdst' => false ),
  825. 'America/Cancun' => array(
  826. 'offset' => -21600000,
  827. 'longname' => "Central Standard Time",
  828. 'shortname' => 'CST',
  829. 'hasdst' => true,
  830. 'dstlongname' => "Central Daylight Time",
  831. 'dstshortname' => 'CDT' ),
  832. 'America/Chicago' => array(
  833. 'offset' => -21600000,
  834. 'longname' => "Central Standard Time",
  835. 'shortname' => 'CST',
  836. 'hasdst' => true,
  837. 'dstlongname' => "Central Daylight Time",
  838. 'dstshortname' => 'CDT' ),
  839. 'America/Costa_Rica' => array(
  840. 'offset' => -21600000,
  841. 'longname' => "Central Standard Time",
  842. 'shortname' => 'CST',
  843. 'hasdst' => false ),
  844. 'America/El_Salvador' => array(
  845. 'offset' => -21600000,
  846. 'longname' => "Central Standard Time",
  847. 'shortname' => 'CST',
  848. 'hasdst' => false ),
  849. 'America/Guatemala' => array(
  850. 'offset' => -21600000,
  851. 'longname' => "Central Standard Time",
  852. 'shortname' => 'CST',
  853. 'hasdst' => false ),
  854. 'America/Managua' => array(
  855. 'offset' => -21600000,
  856. 'longname' => "Central Standard Time",
  857. 'shortname' => 'CST',
  858. 'hasdst' => false ),
  859. 'America/Menominee' => array(
  860. 'offset' => -21600000,
  861. 'longname' => "Central Standard Time",
  862. 'shortname' => 'CST',
  863. 'hasdst' => true,
  864. 'dstlongname' => "Central Daylight Time",
  865. 'dstshortname' => 'CDT' ),
  866. 'America/Merida' => array(
  867. 'offset' => -21600000,
  868. 'longname' => "Central Standard Time",
  869. 'shortname' => 'CST',
  870. 'hasdst' => true,
  871. 'dstlongname' => "Central Daylight Time",
  872. 'dstshortname' => 'CDT' ),
  873. 'America/Mexico_City' => array(
  874. 'offset' => -21600000,
  875. 'longname' => "Central Standard Time",
  876. 'shortname' => 'CST',
  877. 'hasdst' => false ),
  878. 'America/Monterrey' => array(
  879. 'offset' => -21600000,
  880. 'longname' => "Central Standard Time",
  881. 'shortname' => 'CST',
  882. 'hasdst' => true,
  883. 'dstlongname' => "Central Daylight Time",
  884. 'dstshortname' => 'CDT' ),
  885. 'America/North_Dakota/Center' => array(
  886. 'offset' => -21600000,
  887. 'longname' => "Central Standard Time",
  888. 'shortname' => 'CST',
  889. 'hasdst' => true,
  890. 'dstlongname' => "Central Daylight Time",
  891. 'dstshortname' => 'CDT' ),
  892. 'America/Rainy_River' => array(
  893. 'offset' => -21600000,
  894. 'longname' => "Central Standard Time",
  895. 'shortname' => 'CST',
  896. 'hasdst' => true,
  897. 'dstlongname' => "Central Daylight Time",
  898. 'dstshortname' => 'CDT' ),
  899. 'America/Rankin_Inlet' => array(
  900. 'offset' => -21600000,
  901. 'longname' => "Eastern Standard Time",
  902. 'shortname' => 'EST',
  903. 'hasdst' => true,
  904. 'dstlongname' => "Eastern Daylight Time",
  905. 'dstshortname' => 'EDT' ),
  906. 'America/Regina' => array(
  907. 'offset' => -21600000,
  908. 'longname' => "Central Standard Time",
  909. 'shortname' => 'CST',
  910. 'hasdst' => false ),
  911. 'America/Swift_Current' => array(
  912. 'offset' => -21600000,
  913. 'longname' => "Central Standard Time",
  914. 'shortname' => 'CST',
  915. 'hasdst' => false ),
  916. 'America/Tegucigalpa' => array(
  917. 'offset' => -21600000,
  918. 'longname' => "Central Standard Time",
  919. 'shortname' => 'CST',
  920. 'hasdst' => false ),
  921. 'America/Winnipeg' => array(
  922. 'offset' => -21600000,
  923. 'longname' => "Central Standard Time",
  924. 'shortname' => 'CST',
  925. 'hasdst' => true,
  926. 'dstlongname' => "Central Daylight Time",
  927. 'dstshortname' => 'CDT' ),
  928. 'CST' => array(
  929. 'offset' => -21600000,
  930. 'longname' => "Central Standard Time",
  931. 'shortname' => 'CST',
  932. 'hasdst' => true,
  933. 'dstlongname' => "Central Daylight Time",
  934. 'dstshortname' => 'CDT' ),
  935. 'CST6CDT' => array(
  936. 'offset' => -21600000,
  937. 'longname' => "Central Standard Time",
  938. 'shortname' => 'CST',
  939. 'hasdst' => true,
  940. 'dstlongname' => "Central Daylight Time",
  941. 'dstshortname' => 'CDT' ),
  942. 'Canada/Central' => array(
  943. 'offset' => -21600000,
  944. 'longname' => "Central Standard Time",
  945. 'shortname' => 'CST',
  946. 'hasdst' => true,
  947. 'dstlongname' => "Central Daylight Time",
  948. 'dstshortname' => 'CDT' ),
  949. 'Canada/East-Saskatchewan' => array(
  950. 'offset' => -21600000,
  951. 'longname' => "Central Standard Time",
  952. 'shortname' => 'CST',
  953. 'hasdst' => false ),
  954. 'Canada/Saskatchewan' => array(
  955. 'offset' => -21600000,
  956. 'longname' => "Central Standard Time",
  957. 'shortname' => 'CST',
  958. 'hasdst' => false ),
  959. 'Chile/EasterIsland' => array(
  960. 'offset' => -21600000,
  961. 'longname' => "Easter Is. Time",
  962. 'shortname' => 'EAST',
  963. 'hasdst' => true,
  964. 'dstlongname' => "Easter Is. Summer Time",
  965. 'dstshortname' => 'EASST' ),
  966. 'Etc/GMT+6' => array(
  967. 'offset' => -21600000,
  968. 'longname' => "GMT-06:00",
  969. 'shortname' => 'GMT-06:00',
  970. 'hasdst' => false ),
  971. 'Mexico/General' => array(
  972. 'offset' => -21600000,
  973. 'longname' => "Central Standard Time",
  974. 'shortname' => 'CST',
  975. 'hasdst' => false ),
  976. 'Pacific/Easter' => array(
  977. 'offset' => -21600000,
  978. 'longname' => "Easter Is. Time",
  979. 'shortname' => 'EAST',
  980. 'hasdst' => true,
  981. 'dstlongname' => "Easter Is. Summer Time",
  982. 'dstshortname' => 'EASST' ),
  983. 'Pacific/Galapagos' => array(
  984. 'offset' => -21600000,
  985. 'longname' => "Galapagos Time",
  986. 'shortname' => 'GALT',
  987. 'hasdst' => false ),
  988. 'SystemV/CST6' => array(
  989. 'offset' => -21600000,
  990. 'longname' => "Central Standard Time",
  991. 'shortname' => 'CST',
  992. 'hasdst' => false ),
  993. 'SystemV/CST6CDT' => array(
  994. 'offset' => -21600000,
  995. 'longname' => "Central Standard Time",
  996. 'shortname' => 'CST',
  997. 'hasdst' => true,
  998. 'dstlongname' => "Central Daylight Time",
  999. 'dstshortname' => 'CDT' ),
  1000. 'US/Central' => array(
  1001. 'offset' => -21600000,
  1002. 'longname' => "Central Standard Time",
  1003. 'shortname' => 'CST',
  1004. 'hasdst' => true,
  1005. 'dstlongname' => "Central Daylight Time",
  1006. 'dstshortname' => 'CDT' ),
  1007. 'America/Bogota' => array(
  1008. 'offset' => -18000000,
  1009. 'longname' => "Colombia Time",
  1010. 'shortname' => 'COT',
  1011. 'hasdst' => false ),
  1012. 'America/Cayman' => array(
  1013. 'offset' => -18000000,
  1014. 'longname' => "Eastern Standard Time",
  1015. 'shortname' => 'EST',
  1016. 'hasdst' => false ),
  1017. 'America/Detroit' => array(
  1018. 'offset' => -18000000,
  1019. 'longname' => "Eastern Standard Time",
  1020. 'shortname' => 'EST',
  1021. 'hasdst' => true,
  1022. 'dstlongname' => "Eastern Daylight Time",
  1023. 'dstshortname' => 'EDT' ),
  1024. 'America/Eirunepe' => array(
  1025. 'offset' => -18000000,
  1026. 'longname' => "Acre Time",
  1027. 'shortname' => 'ACT',
  1028. 'hasdst' => false ),
  1029. 'America/Fort_Wayne' => array(
  1030. 'offset' => -18000000,
  1031. 'longname' => "Eastern Standard Time",
  1032. 'shortname' => 'EST',
  1033. 'hasdst' => false ),
  1034. 'America/Grand_Turk' => array(
  1035. 'offset' => -18000000,
  1036. 'longname' => "Eastern Standard Time",
  1037. 'shortname' => 'EST',
  1038. 'hasdst' => true,
  1039. 'dstlongname' => "Eastern Daylight Time",
  1040. 'dstshortname' => 'EDT' ),
  1041. 'America/Guayaquil' => array(
  1042. 'offset' => -18000000,
  1043. 'longname' => "Ecuador Time",
  1044. 'shortname' => 'ECT',
  1045. 'hasdst' => false ),
  1046. 'America/Havana' => array(
  1047. 'offset' => -18000000,
  1048. 'longname' => "Central Standard Time",
  1049. 'shortname' => 'CST',
  1050. 'hasdst' => true,
  1051. 'dstlongname' => "Central Daylight Time",
  1052. 'dstshortname' => 'CDT' ),
  1053. 'America/Indiana/Indianapolis' => array(
  1054. 'offset' => -18000000,
  1055. 'longname' => "Eastern Standard Time",
  1056. 'shortname' => 'EST',
  1057. 'hasdst' => false ),
  1058. 'America/Indiana/Knox' => array(
  1059. 'offset' => -18000000,
  1060. 'longname' => "Eastern Standard Time",
  1061. 'shortname' => 'EST',
  1062. 'hasdst' => false ),
  1063. 'America/Indiana/Marengo' => array(
  1064. 'offset' => -18000000,
  1065. 'longname' => "Eastern Standard Time",
  1066. 'shortname' => 'EST',
  1067. 'hasdst' => false ),
  1068. 'America/Indiana/Vevay' => array(
  1069. 'offset' => -18000000,
  1070. 'longname' => "Eastern Standard Time",
  1071. 'shortname' => 'EST',
  1072. 'hasdst' => false ),
  1073. 'America/Indianapolis' => array(
  1074. 'offset' => -18000000,
  1075. 'longname' => "Eastern Standard Time",
  1076. 'shortname' => 'EST',
  1077. 'hasdst' => false ),
  1078. 'America/Iqaluit' => array(
  1079. 'offset' => -18000000,
  1080. 'longname' => "Eastern Standard Time",
  1081. 'shortname' => 'EST',
  1082. 'hasdst' => true,
  1083. 'dstlongname' => "Eastern Daylight Time",
  1084. 'dstshortname' => 'EDT' ),
  1085. 'America/Jamaica' => array(
  1086. 'offset' => -18000000,
  1087. 'longname' => "Eastern Standard Time",
  1088. 'shortname' => 'EST',
  1089. 'hasdst' => false ),
  1090. 'America/Kentucky/Louisville' => array(
  1091. 'offset' => -18000000,
  1092. 'longname' => "Eastern Standard Time",
  1093. 'shortname' => 'EST',
  1094. 'hasdst' => true,
  1095. 'dstlongname' => "Eastern Daylight Time",
  1096. 'dstshortname' => 'EDT' ),
  1097. 'America/Kentucky/Monticello' => array(
  1098. 'offset' => -18000000,
  1099. 'longname' => "Eastern Standard Time",
  1100. 'shortname' => 'EST',
  1101. 'hasdst' => true,
  1102. 'dstlongname' => "Eastern Daylight Time",
  1103. 'dstshortname' => 'EDT' ),
  1104. 'America/Knox_IN' => array(
  1105. 'offset' => -18000000,
  1106. 'longname' => "Eastern Standard Time",
  1107. 'shortname' => 'EST',
  1108. 'hasdst' => false ),
  1109. 'America/Lima' => array(
  1110. 'offset' => -18000000,
  1111. 'longname' => "Peru Time",
  1112. 'shortname' => 'PET',
  1113. 'hasdst' => false ),
  1114. 'America/Louisville' => array(
  1115. 'offset' => -18000000,
  1116. 'longname' => "Eastern Standard Time",
  1117. 'shortname' => 'EST',
  1118. 'hasdst' => true,
  1119. 'dstlongname' => "Eastern Daylight Time",
  1120. 'dstshortname' => 'EDT' ),
  1121. 'America/Montreal' => array(
  1122. 'offset' => -18000000,
  1123. 'longname' => "Eastern Standard Time",
  1124. 'shortname' => 'EST',
  1125. 'hasdst' => true,
  1126. 'dstlongname' => "Eastern Daylight Time",
  1127. 'dstshortname' => 'EDT' ),
  1128. 'America/Nassau' => array(
  1129. 'offset' => -18000000,
  1130. 'longname' => "Eastern Standard Time",
  1131. 'shortname' => 'EST',
  1132. 'hasdst' => true,
  1133. 'dstlongname' => "Eastern Daylight Time",
  1134. 'dstshortname' => 'EDT' ),
  1135. 'America/New_York' => array(
  1136. 'offset' => -18000000,
  1137. 'longname' => "Eastern Standard Time",
  1138. 'shortname' => 'EST',
  1139. 'hasdst' => true,
  1140. 'dstlongname' => "Eastern Daylight Time",
  1141. 'dstshortname' => 'EDT' ),
  1142. 'America/Nipigon' => array(
  1143. 'offset' => -18000000,
  1144. 'longname' => "Eastern Standard Time",
  1145. 'shortname' => 'EST',
  1146. 'hasdst' => true,
  1147. 'dstlongname' => "Eastern Daylight Time",
  1148. 'dstshortname' => 'EDT' ),
  1149. 'America/Panama' => array(
  1150. 'offset' => -18000000,
  1151. 'longname' => "Eastern Standard Time",
  1152. 'shortname' => 'EST',
  1153. 'hasdst' => false ),
  1154. 'America/Pangnirtung' => array(
  1155. 'offset' => -18000000,
  1156. 'longname' => "Eastern Standard Time",
  1157. 'shortname' => 'EST',
  1158. 'hasdst' => true,
  1159. 'dstlongname' => "Eastern Daylight Time",
  1160. 'dstshortname' => 'EDT' ),
  1161. 'America/Port-au-Prince' => array(
  1162. 'offset' => -18000000,
  1163. 'longname' => "Eastern Standard Time",
  1164. 'shortname' => 'EST',
  1165. 'hasdst' => false ),
  1166. 'America/Porto_Acre' => array(
  1167. 'offset' => -18000000,
  1168. 'longname' => "Acre Time",
  1169. 'shortname' => 'ACT',
  1170. 'hasdst' => false ),
  1171. 'America/Rio_Branco' => array(
  1172. 'offset' => -18000000,
  1173. 'longname' => "Acre Time",
  1174. 'shortname' => 'ACT',
  1175. 'hasdst' => false ),
  1176. 'America/Thunder_Bay' => array(
  1177. 'offset' => -18000000,
  1178. 'longname' => "Eastern Standard Time",
  1179. 'shortname' => 'EST',
  1180. 'hasdst' => true,
  1181. 'dstlongname' => "Eastern Daylight Time",
  1182. 'dstshortname' => 'EDT' ),
  1183. 'Brazil/Acre' => array(
  1184. 'offset' => -18000000,
  1185. 'longname' => "Acre Time",
  1186. 'shortname' => 'ACT',
  1187. 'hasdst' => false ),
  1188. 'Canada/Eastern' => array(
  1189. 'offset' => -18000000,
  1190. 'longname' => "Eastern Standard Time",
  1191. 'shortname' => 'EST',
  1192. 'hasdst' => true,
  1193. 'dstlongname' => "Eastern Daylight Time",
  1194. 'dstshortname' => 'EDT' ),
  1195. 'Cuba' => array(
  1196. 'offset' => -18000000,
  1197. 'longname' => "Central Standard Time",
  1198. 'shortname' => 'CST',
  1199. 'hasdst' => true,
  1200. 'dstlongname' => "Central Daylight Time",
  1201. 'dstshortname' => 'CDT' ),
  1202. 'EST' => array(
  1203. 'offset' => -18000000,
  1204. 'longname' => "Eastern Standard Time",
  1205. 'shortname' => 'EST',
  1206. 'hasdst' => true,
  1207. 'dstlongname' => "Eastern Daylight Time",
  1208. 'dstshortname' => 'EDT' ),
  1209. 'EST5EDT' => array(
  1210. 'offset' => -18000000,
  1211. 'longname' => "Eastern Standard Time",
  1212. 'shortname' => 'EST',
  1213. 'hasdst' => true,
  1214. 'dstlongname' => "Eastern Daylight Time",
  1215. 'dstshortname' => 'EDT' ),
  1216. 'Etc/GMT+5' => array(
  1217. 'offset' => -18000000,
  1218. 'longname' => "GMT-05:00",
  1219. 'shortname' => 'GMT-05:00',
  1220. 'hasdst' => false ),
  1221. 'IET' => array(
  1222. 'offset' => -18000000,
  1223. 'longname' => "Eastern Standard Time",
  1224. 'shortname' => 'EST',
  1225. 'hasdst' => false ),
  1226. 'Jamaica' => array(
  1227. 'offset' => -18000000,
  1228. 'longname' => "Eastern Standard Time",
  1229. 'shortname' => 'EST',
  1230. 'hasdst' => false ),
  1231. 'SystemV/EST5' => array(
  1232. 'offset' => -18000000,
  1233. 'longname' => "Eastern Standard Time",
  1234. 'shortname' => 'EST',
  1235. 'hasdst' => false ),
  1236. 'SystemV/EST5EDT' => array(
  1237. 'offset' => -18000000,
  1238. 'longname' => "Eastern Standard Time",
  1239. 'shortname' => 'EST',
  1240. 'hasdst' => true,
  1241. 'dstlongname' => "Eastern Daylight Time",
  1242. 'dstshortname' => 'EDT' ),
  1243. 'US/East-Indiana' => array(
  1244. 'offset' => -18000000,
  1245. 'longname' => "Eastern Standard Time",
  1246. 'shortname' => 'EST',
  1247. 'hasdst' => false ),
  1248. 'US/Eastern' => array(
  1249. 'offset' => -18000000,
  1250. 'longname' => "Eastern Standard Time",
  1251. 'shortname' => 'EST',
  1252. 'hasdst' => true,
  1253. 'dstlongname' => "Eastern Daylight Time",
  1254. 'dstshortname' => 'EDT' ),
  1255. 'US/Indiana-Starke' => array(
  1256. 'offset' => -18000000,
  1257. 'longname' => "Eastern Standard Time",
  1258. 'shortname' => 'EST',
  1259. 'hasdst' => false ),
  1260. 'US/Michigan' => 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/Anguilla' => array(
  1268. 'offset' => -14400000,
  1269. 'longname' => "Atlantic Standard Time",
  1270. 'shortname' => 'AST',
  1271. 'hasdst' => false ),
  1272. 'America/Antigua' => array(
  1273. 'offset' => -14400000,
  1274. 'longname' => "Atlantic Standard Time",
  1275. 'shortname' => 'AST',
  1276. 'hasdst' => false ),
  1277. 'America/Aruba' => array(
  1278. 'offset' => -14400000,
  1279. 'longname' => "Atlantic Standard Time",
  1280. 'shortname' => 'AST',
  1281. 'hasdst' => false ),
  1282. 'America/Asuncion' => array(
  1283. 'offset' => -14400000,
  1284. 'longname' => "Paraguay Time",
  1285. 'shortname' => 'PYT',
  1286. 'hasdst' => true,
  1287. 'dstlongname' => "Paraguay Summer Time",
  1288. 'dstshortname' => 'PYST' ),
  1289. 'America/Barbados' => array(
  1290. 'offset' => -14400000,
  1291. 'longname' => "Atlantic Standard Time",
  1292. 'shortname' => 'AST',
  1293. 'hasdst' => false ),
  1294. 'America/Boa_Vista' => array(
  1295. 'offset' => -14400000,
  1296. 'longname' => "Amazon Standard Time",
  1297. 'shortname' => 'AMT',
  1298. 'hasdst' => false ),
  1299. 'America/Caracas' => array(
  1300. 'offset' => -14400000,
  1301. 'longname' => "Venezuela Time",
  1302. 'shortname' => 'VET',
  1303. 'hasdst' => false ),
  1304. 'America/Cuiaba' => array(
  1305. 'offset' => -14400000,
  1306. 'longname' => "Amazon Standard Time",
  1307. 'shortname' => 'AMT',
  1308. 'hasdst' => true,
  1309. 'dstlongname' => "Amazon Summer Time",
  1310. 'dstshortname' => 'AMST' ),
  1311. 'America/Curacao' => array(
  1312. 'offset' => -14400000,
  1313. 'longname' => "Atlantic Standard Time",
  1314. 'shortname' => 'AST',
  1315. 'hasdst' => false ),
  1316. 'America/Dominica' => array(
  1317. 'offset' => -14400000,
  1318. 'longname' => "Atlantic Standard Time",
  1319. 'shortname' => 'AST',
  1320. 'hasdst' => false ),
  1321. 'America/Glace_Bay' => array(
  1322. 'offset' => -14400000,
  1323. 'longname' => "Atlantic Standard Time",
  1324. 'shortname' => 'AST',
  1325. 'hasdst' => true,
  1326. 'dstlongname' => "Atlantic Daylight Time",
  1327. 'dstshortname' => 'ADT' ),
  1328. 'America/Goose_Bay' => array(
  1329. 'offset' => -14400000,
  1330. 'longname' => "Atlantic Standard Time",
  1331. 'shortname' => 'AST',
  1332. 'hasdst' => true,
  1333. 'dstlongname' => "Atlantic Daylight Time",
  1334. 'dstshortname' => 'ADT' ),
  1335. 'America/Grenada' => array(
  1336. 'offset' => -14400000,
  1337. 'longname' => "Atlantic Standard Time",
  1338. 'shortname' => 'AST',
  1339. 'hasdst' => false ),
  1340. 'America/Guadeloupe' => array(
  1341. 'offset' => -14400000,
  1342. 'longname' => "Atlantic Standard Time",
  1343. 'shortname' => 'AST',
  1344. 'hasdst' => false ),
  1345. 'America/Guyana' => array(
  1346. 'offset' => -14400000,
  1347. 'longname' => "Guyana Time",
  1348. 'shortname' => 'GYT',
  1349. 'hasdst' => false ),
  1350. 'America/Halifax' => array(
  1351. 'offset' => -14400000,
  1352. 'longname' => "Atlantic Standard Time",
  1353. 'shortname' => 'AST',
  1354. 'hasdst' => true,
  1355. 'dstlongname' => "Atlantic Daylight Time",
  1356. 'dstshortname' => 'ADT' ),
  1357. 'America/La_Paz' => array(
  1358. 'offset' => -14400000,
  1359. 'longname' => "Bolivia Time",
  1360. 'shortname' => 'BOT',
  1361. 'hasdst' => false ),
  1362. 'America/Manaus' => array(
  1363. 'offset' => -14400000,
  1364. 'longname' => "Amazon Standard Time",
  1365. 'shortname' => 'AMT',
  1366. 'hasdst' => false ),
  1367. 'America/Martinique' => array(
  1368. 'offset' => -14400000,
  1369. 'longname' => "Atlantic Standard Time",
  1370. 'shortname' => 'AST',
  1371. 'hasdst' => false ),
  1372. 'America/Montserrat' => array(
  1373. 'offset' => -14400000,
  1374. 'longname' => "Atlantic Standard Time",
  1375. 'shortname' => 'AST',
  1376. 'hasdst' => false ),
  1377. 'America/Port_of_Spain' => array(
  1378. 'offset' => -14400000,
  1379. 'longname' => "Atlantic Standard Time",
  1380. 'shortname' => 'AST',
  1381. 'hasdst' => false ),
  1382. 'America/Porto_Velho' => array(
  1383. 'offset' => -14400000,
  1384. 'longname' => "Amazon Standard Time",
  1385. 'shortname' => 'AMT',
  1386. 'hasdst' => false ),
  1387. 'America/Puerto_Rico' => array(
  1388. 'offset' => -14400000,
  1389. 'longname' => "Atlantic Standard Time",
  1390. 'shortname' => 'AST',
  1391. 'hasdst' => false ),
  1392. 'America/Santiago' => array(
  1393. 'offset' => -14400000,
  1394. 'longname' => "Chile Time",
  1395. 'shortname' => 'CLT',
  1396. 'hasdst' => true,
  1397. 'dstlongname' => "Chile Summer Time",
  1398. 'dstshortname' => 'CLST' ),
  1399. 'America/Santo_Domingo' => array(
  1400. 'offset' => -14400000,
  1401. 'longname' => "Atlantic Standard Time",
  1402. 'shortname' => 'AST',
  1403. 'hasdst' => false ),
  1404. 'America/St_Kitts' => array(
  1405. 'offset' => -14400000,
  1406. 'longname' => "Atlantic Standard Time",
  1407. 'shortname' => 'AST',
  1408. 'hasdst' => false ),
  1409. 'America/St_Lucia' => array(
  1410. 'offset' => -14400000,
  1411. 'longname' => "Atlantic Standard Time",
  1412. 'shortname' => 'AST',
  1413. 'hasdst' => false ),
  1414. 'America/St_Thomas' => array(
  1415. 'offset' => -14400000,
  1416. 'longname' => "Atlantic Standard Time",
  1417. 'shortname' => 'AST',
  1418. 'hasdst' => false ),
  1419. 'America/St_Vincent' => array(
  1420. 'offset' => -14400000,
  1421. 'longname' => "Atlantic Standard Time",
  1422. 'shortname' => 'AST',
  1423. 'hasdst' => false ),
  1424. 'America/Thule' => array(
  1425. 'offset' => -14400000,
  1426. 'longname' => "Atlantic Standard Time",
  1427. 'shortname' => 'AST',
  1428. 'hasdst' => false ),
  1429. 'America/Tortola' => array(
  1430. 'offset' => -14400000,
  1431. 'longname' => "Atlantic Standard Time",
  1432. 'shortname' => 'AST',
  1433. 'hasdst' => false ),
  1434. 'America/Virgin' => array(
  1435. 'offset' => -14400000,
  1436. 'longname' => "Atlantic Standard Time",
  1437. 'shortname' => 'AST',
  1438. 'hasdst' => false ),
  1439. 'Antarctica/Palmer' => array(
  1440. 'offset' => -14400000,
  1441. 'longname' => "Chile Time",
  1442. 'shortname' => 'CLT',
  1443. 'hasdst' => true,
  1444. 'dstlongname' => "Chile Summer Time",
  1445. 'dstshortname' => 'CLST' ),
  1446. 'Atlantic/Bermuda' => array(
  1447. 'offset' => -14400000,
  1448. 'longname' => "Atlantic Standard Time",
  1449. 'shortname' => 'AST',
  1450. 'hasdst' => true,
  1451. 'dstlongname' => "Atlantic Daylight Time",
  1452. 'dstshortname' => 'ADT' ),
  1453. 'Atlantic/Stanley' => array(
  1454. 'offset' => -14400000,
  1455. 'longname' => "Falkland Is. Time",
  1456. 'shortname' => 'FKT',
  1457. 'hasdst' => true,
  1458. 'dstlongname' => "Falkland Is. Summer Time",
  1459. 'dstshortname' => 'FKST' ),
  1460. 'Brazil/West' => array(
  1461. 'offset' => -14400000,
  1462. 'longname' => "Amazon Standard Time",
  1463. 'shortname' => 'AMT',
  1464. 'hasdst' => false ),
  1465. 'Canada/Atlantic' => array(
  1466. 'offset' => -14400000,
  1467. 'longname' => "Atlantic Standard Time",
  1468. 'shortname' => 'AST',
  1469. 'hasdst' => true,
  1470. 'dstlongname' => "Atlantic Daylight Time",
  1471. 'dstshortname' => 'ADT' ),
  1472. 'Chile/Continental' => array(
  1473. 'offset' => -14400000,
  1474. 'longname' => "Chile Time",
  1475. 'shortname' => 'CLT',
  1476. 'hasdst' => true,
  1477. 'dstlongname' => "Chile Summer Time",
  1478. 'dstshortname' => 'CLST' ),
  1479. 'Etc/GMT+4' => array(
  1480. 'offset' => -14400000,
  1481. 'longname' => "GMT-04:00",
  1482. 'shortname' => 'GMT-04:00',
  1483. 'hasdst' => false ),
  1484. 'PRT' => array(
  1485. 'offset' => -14400000,
  1486. 'longname' => "Atlantic Standard Time",
  1487. 'shortname' => 'AST',
  1488. 'hasdst' => false ),
  1489. 'SystemV/AST4' => array(
  1490. 'offset' => -14400000,
  1491. 'longname' => "Atlantic Standard Time",
  1492. 'shortname' => 'AST',
  1493. 'hasdst' => false ),
  1494. 'SystemV/AST4ADT' => array(
  1495. 'offset' => -14400000,
  1496. 'longname' => "Atlantic Standard Time",
  1497. 'shortname' => 'AST',
  1498. 'hasdst' => true,
  1499. 'dstlongname' => "Atlantic Daylight Time",
  1500. 'dstshortname' => 'ADT' ),
  1501. 'America/St_Johns' => array(
  1502. 'offset' => -12600000,
  1503. 'longname' => "Newfoundland Standard Time",
  1504. 'shortname' => 'NST',
  1505. 'hasdst' => true,
  1506. 'dstlongname' => "Newfoundland Daylight Time",
  1507. 'dstshortname' => 'NDT' ),
  1508. 'CNT' => array(
  1509. 'offset' => -12600000,
  1510. 'longname' => "Newfoundland Standard Time",
  1511. 'shortname' => 'NST',
  1512. 'hasdst' => true,
  1513. 'dstlongname' => "Newfoundland Daylight Time",
  1514. 'dstshortname' => 'NDT' ),
  1515. 'Canada/Newfoundland' => array(
  1516. 'offset' => -12600000,
  1517. 'longname' => "Newfoundland Standard Time",
  1518. 'shortname' => 'NST',
  1519. 'hasdst' => true,
  1520. 'dstlongname' => "Newfoundland Daylight Time",
  1521. 'dstshortname' => 'NDT' ),
  1522. 'AGT' => array(
  1523. 'offset' => -10800000,
  1524. 'longname' => "Argentine Time",
  1525. 'shortname' => 'ART',
  1526. 'hasdst' => false ),
  1527. 'America/Araguaina' => array(
  1528. 'offset' => -10800000,
  1529. 'longname' => "Brazil Time",
  1530. 'shortname' => 'BRT',
  1531. 'hasdst' => true,
  1532. 'dstlongname' => "Brazil Summer Time",
  1533. 'dstshortname' => 'BRST' ),
  1534. 'America/Belem' => array(
  1535. 'offset' => -10800000,
  1536. 'longname' => "Brazil Time",
  1537. 'shortname' => 'BRT',
  1538. 'hasdst' => false ),
  1539. 'America/Buenos_Aires' => array(
  1540. 'offset' => -10800000,
  1541. 'longname' => "Argentine Time",
  1542. 'shortname' => 'ART',
  1543. 'hasdst' => false ),
  1544. 'America/Catamarca' => array(
  1545. 'offset' => -10800000,
  1546. 'longname' => "Argentine Time",
  1547. 'shortname' => 'ART',
  1548. 'hasdst' => false ),
  1549. 'America/Cayenne' => array(
  1550. 'offset' => -10800000,
  1551. 'longname' => "French Guiana Time",
  1552. 'shortname' => 'GFT',
  1553. 'hasdst' => false ),
  1554. 'America/Cordoba' => array(
  1555. 'offset' => -10800000,
  1556. 'longname' => "Argentine Time",
  1557. 'shortname' => 'ART',
  1558. 'hasdst' => false ),
  1559. 'America/Fortaleza' => array(
  1560. 'offset' => -10800000,
  1561. 'longname' => "Brazil Time",
  1562. 'shortname' => 'BRT',
  1563. 'hasdst' => true,
  1564. 'dstlongname' => "Brazil Summer Time",
  1565. 'dstshortname' => 'BRST' ),
  1566. 'America/Godthab' => array(
  1567. 'offset' => -10800000,
  1568. 'longname' => "Western Greenland Time",
  1569. 'shortname' => 'WGT',
  1570. 'hasdst' => true,
  1571. 'dstlongname' => "Western Greenland Summer Time",
  1572. 'dstshortname' => 'WGST' ),
  1573. 'America/Jujuy' => array(
  1574. 'offset' => -10800000,
  1575. 'longname' => "Argentine Time",
  1576. 'shortname' => 'ART',
  1577. 'hasdst' => false ),
  1578. 'America/Maceio' => array(
  1579. 'offset' => -10800000,
  1580. 'longname' => "Brazil Time",
  1581. 'shortname' => 'BRT',
  1582. 'hasdst' => true,
  1583. 'dstlongname' => "Brazil Summer Time",
  1584. 'dstshortname' => 'BRST' ),
  1585. 'America/Mendoza' => array(
  1586. 'offset' => -10800000,
  1587. 'longname' => "Argentine Time",
  1588. 'shortname' => 'ART',
  1589. 'hasdst' => false ),
  1590. 'America/Miquelon' => array(
  1591. 'offset' => -10800000,
  1592. 'longname' => "Pierre & Miquelon Standard Time",
  1593. 'shortname' => 'PMST',
  1594. 'hasdst' => true,
  1595. 'dstlongname' => "Pierre & Miquelon Daylight Time",
  1596. 'dstshortname' => 'PMDT' ),
  1597. 'America/Montevideo' => array(
  1598. 'offset' => -10800000,
  1599. 'longname' => "Uruguay Time",
  1600. 'shortname' => 'UYT',
  1601. 'hasdst' => false ),
  1602. 'America/Paramaribo' => array(
  1603. 'offset' => -10800000,
  1604. 'longname' => "Suriname Time",
  1605. 'shortname' => 'SRT',
  1606. 'hasdst' => false ),
  1607. 'America/Recife' => array(
  1608. 'offset' => -10800000,
  1609. 'longname' => "Brazil Time",
  1610. 'shortname' => 'BRT',
  1611. 'hasdst' => true,
  1612. 'dstlongname' => "Brazil Summer Time",
  1613. 'dstshortname' => 'BRST' ),
  1614. 'America/Rosario' => array(
  1615. 'offset' => -10800000,
  1616. 'longname' => "Argentine Time",
  1617. 'shortname' => 'ART',
  1618. 'hasdst' => false ),
  1619. 'America/Sao_Paulo' => array(
  1620. 'offset' => -10800000,
  1621. 'longname' => "Brazil Time",
  1622. 'shortname' => 'BRT',
  1623. 'hasdst' => true,
  1624. 'dstlongname' => "Brazil Summer Time",
  1625. 'dstshortname' => 'BRST' ),
  1626. 'BET' => array(
  1627. 'offset' => -10800000,
  1628. 'longname' => "Brazil Time",
  1629. 'shortname' => 'BRT',
  1630. 'hasdst' => true,
  1631. 'dstlongname' => "Brazil Summer Time",
  1632. 'dstshortname' => 'BRST' ),
  1633. 'Brazil/East' => array(
  1634. 'offset' => -10800000,
  1635. 'longname' => "Brazil Time",
  1636. 'shortname' => 'BRT',
  1637. 'hasdst' => true,
  1638. 'dstlongname' => "Brazil Summer Time",
  1639. 'dstshortname' => 'BRST' ),
  1640. 'Etc/GMT+3' => array(
  1641. 'offset' => -10800000,
  1642. 'longname' => "GMT-03:00",
  1643. 'shortname' => 'GMT-03:00',
  1644. 'hasdst' => false ),
  1645. 'America/Noronha' => array(
  1646. 'offset' => -7200000,
  1647. 'longname' => "Fernando de Noronha Time",
  1648. 'shortname' => 'FNT',
  1649. 'hasdst' => false ),
  1650. 'Atlantic/South_Georgia' => array(
  1651. 'offset' => -7200000,
  1652. 'longname' => "South Georgia Standard Time",
  1653. 'shortname' => 'GST',
  1654. 'hasdst' => false ),
  1655. 'Brazil/DeNoronha' => array(
  1656. 'offset' => -7200000,
  1657. 'longname' => "Fernando de Noronha Time",
  1658. 'shortname' => 'FNT',
  1659. 'hasdst' => false ),
  1660. 'Etc/GMT+2' => array(
  1661. 'offset' => -7200000,
  1662. 'longname' => "GMT-02:00",
  1663. 'shortname' => 'GMT-02:00',
  1664. 'hasdst' => false ),
  1665. 'America/Scoresbysund' => array(
  1666. 'offset' => -3600000,
  1667. 'longname' => "Eastern Greenland Time",
  1668. 'shortname' => 'EGT',
  1669. 'hasdst' => true,
  1670. 'dstlongname' => "Eastern Greenland Summer Time",
  1671. 'dstshortname' => 'EGST' ),
  1672. 'Atlantic/Azores' => array(
  1673. 'offset' => -3600000,
  1674. 'longname' => "Azores Time",
  1675. 'shortname' => 'AZOT',
  1676. 'hasdst' => true,
  1677. 'dstlongname' => "Azores Summer Time",
  1678. 'dstshortname' => 'AZOST' ),
  1679. 'Atlantic/Cape_Verde' => array(
  1680. 'offset' => -3600000,
  1681. 'longname' => "Cape Verde Time",
  1682. 'shortname' => 'CVT',
  1683. 'hasdst' => false ),
  1684. 'Etc/GMT+1' => array(
  1685. 'offset' => -3600000,
  1686. 'longname' => "GMT-01:00",
  1687. 'shortname' => 'GMT-01:00',
  1688. 'hasdst' => false ),
  1689. 'Africa/Abidjan' => array(
  1690. 'offset' => 0,
  1691. 'longname' => "Greenwich Mean Time",
  1692. 'shortname' => 'GMT',
  1693. 'hasdst' => false ),
  1694. 'Africa/Accra' => array(
  1695. 'offset' => 0,
  1696. 'longname' => "Greenwich Mean Time",
  1697. 'shortname' => 'GMT',
  1698. 'hasdst' => false ),
  1699. 'Africa/Bamako' => array(
  1700. 'offset' => 0,
  1701. 'longname' => "Greenwich Mean Time",
  1702. 'shortname' => 'GMT',
  1703. 'hasdst' => false ),
  1704. 'Africa/Banjul' => array(
  1705. 'offset' => 0,
  1706. 'longname' => "Greenwich Mean Time",
  1707. 'shortname' => 'GMT',
  1708. 'hasdst' => false ),
  1709. 'Africa/Bissau' => array(
  1710. 'offset' => 0,
  1711. 'longname' => "Greenwich Mean Time",
  1712. 'shortname' => 'GMT',
  1713. 'hasdst' => false ),
  1714. 'Africa/Casablanca' => array(
  1715. 'offset' => 0,
  1716. 'longname' => "Western European Time",
  1717. 'shortname' => 'WET',
  1718. 'hasdst' => false ),
  1719. 'Africa/Conakry' => array(
  1720. 'offset' => 0,
  1721. 'longname' => "Greenwich Mean Time",
  1722. 'shortname' => 'GMT',
  1723. 'hasdst' => false ),
  1724. 'Africa/Dakar' => array(
  1725. 'offset' => 0,
  1726. 'longname' => "Greenwich Mean Time",
  1727. 'shortname' => 'GMT',
  1728. 'hasdst' => false ),
  1729. 'Africa/El_Aaiun' => array(
  1730. 'offset' => 0,
  1731. 'longname' => "Western European Time",
  1732. 'shortname' => 'WET',
  1733. 'hasdst' => false ),
  1734. 'Africa/Freetown' => array(
  1735. 'offset' => 0,
  1736. 'longname' => "Greenwich Mean Time",
  1737. 'shortname' => 'GMT',
  1738. 'hasdst' => false ),
  1739. 'Africa/Lome' => array(
  1740. 'offset' => 0,
  1741. 'longname' => "Greenwich Mean Time",
  1742. 'shortname' => 'GMT',
  1743. 'hasdst' => false ),
  1744. 'Africa/Monrovia' => array(
  1745. 'offset' => 0,
  1746. 'longname' => "Greenwich Mean Time",
  1747. 'shortname' => 'GMT',
  1748. 'hasdst' => false ),
  1749. 'Africa/Nouakchott' => array(
  1750. 'offset' => 0,
  1751. 'longname' => "Greenwich Mean Time",
  1752. 'shortname' => 'GMT',
  1753. 'hasdst' => false ),
  1754. 'Africa/Ouagadougou' => array(
  1755. 'offset' => 0,
  1756. 'longname' => "Greenwich Mean Time",
  1757. 'shortname' => 'GMT',
  1758. 'hasdst' => false ),
  1759. 'Africa/Sao_Tome' => array(
  1760. 'offset' => 0,
  1761. 'longname' => "Greenwich Mean Time",
  1762. 'shortname' => 'GMT',
  1763. 'hasdst' => false ),
  1764. 'Africa/Timbuktu' => array(
  1765. 'offset' => 0,
  1766. 'longname' => "Greenwich Mean Time",
  1767. 'shortname' => 'GMT',
  1768. 'hasdst' => false ),
  1769. 'America/Danmarkshavn' => array(
  1770. 'offset' => 0,
  1771. 'longname' => "Greenwich Mean Time",
  1772. 'shortname' => 'GMT',
  1773. 'hasdst' => false ),
  1774. 'Atlantic/Canary' => array(
  1775. 'offset' => 0,
  1776. 'longname' => "Western European Time",
  1777. 'shortname' => 'WET',
  1778. 'hasdst' => true,
  1779. 'dstlongname' => "Western European Summer Time",
  1780. 'dstshortname' => 'WEST' ),
  1781. 'Atlantic/Faeroe' => array(
  1782. 'offset' => 0,
  1783. 'longname' => "Western European Time",
  1784. 'shortname' => 'WET',
  1785. 'hasdst' => true,
  1786. 'dstlongname' => "Western European Summer Time",
  1787. 'dstshortname' => 'WEST' ),
  1788. 'Atlantic/Madeira' => array(
  1789. 'offset' => 0,
  1790. 'longname' => "Western European Time",
  1791. 'shortname' => 'WET',
  1792. 'hasdst' => true,
  1793. 'dstlongname' => "Western European Summer Time",
  1794. 'dstshortname' => 'WEST' ),
  1795. 'Atlantic/Reykjavik' => array(
  1796. 'offset' => 0,
  1797. 'longname' => "Greenwich Mean Time",
  1798. 'shortname' => 'GMT',
  1799. 'hasdst' => false ),
  1800. 'Atlantic/St_Helena' => array(
  1801. 'offset' => 0,
  1802. 'longname' => "Greenwich Mean Time",
  1803. 'shortname' => 'GMT',
  1804. 'hasdst' => false ),
  1805. 'Eire' => array(
  1806. 'offset' => 0,
  1807. 'longname' => "Greenwich Mean Time",
  1808. 'shortname' => 'GMT',
  1809. 'hasdst' => true,
  1810. 'dstlongname' => "Irish Summer Time",
  1811. 'dstshortname' => 'IST' ),
  1812. 'Etc/GMT' => array(
  1813. 'offset' => 0,
  1814. 'longname' => "GMT+00:00",
  1815. 'shortname' => 'GMT+00:00',
  1816. 'hasdst' => false ),
  1817. 'Etc/GMT+0' => array(
  1818. 'offset' => 0,
  1819. 'longname' => "GMT+00:00",
  1820. 'shortname' => 'GMT+00:00',
  1821. 'hasdst' => false ),
  1822. 'Etc/GMT-0' => array(
  1823. 'offset' => 0,
  1824. 'longname' => "GMT+00:00",
  1825. 'shortname' => 'GMT+00:00',
  1826. 'hasdst' => false ),
  1827. 'Etc/GMT0' => array(
  1828. 'offset' => 0,
  1829. 'longname' => "GMT+00:00",
  1830. 'shortname' => 'GMT+00:00',
  1831. 'hasdst' => false ),
  1832. 'Etc/Greenwich' => array(
  1833. 'offset' => 0,
  1834. 'longname' => "Greenwich Mean Time",
  1835. 'shortname' => 'GMT',
  1836. 'hasdst' => false ),
  1837. 'Etc/UCT' => array(
  1838. 'offset' => 0,
  1839. 'longname' => "Coordinated Universal Time",
  1840. 'shortname' => 'UTC',
  1841. 'hasdst' => false ),
  1842. 'Etc/UTC' => array(
  1843. 'offset' => 0,
  1844. 'longname' => "Coordinated Universal Time",
  1845. 'shortname' => 'UTC',
  1846. 'hasdst' => false ),
  1847. 'Etc/Universal' => array(
  1848. 'offset' => 0,
  1849. 'longname' => "Coordinated Universal Time",
  1850. 'shortname' => 'UTC',
  1851. 'hasdst' => false ),
  1852. 'Etc/Zulu' => array(
  1853. 'offset' => 0,
  1854. 'longname' => "Coordinated Universal Time",
  1855. 'shortname' => 'UTC',
  1856. 'hasdst' => false ),
  1857. 'Europe/Belfast' => array(
  1858. 'offset' => 0,
  1859. 'longname' => "Greenwich Mean Time",
  1860. 'shortname' => 'GMT',
  1861. 'hasdst' => true,
  1862. 'dstlongname' => "British Summer Time",
  1863. 'dstshortname' => 'BST' ),
  1864. 'Europe/Dublin' => array(
  1865. 'offset' => 0,
  1866. 'longname' => "Greenwich Mean Time",
  1867. 'shortname' => 'GMT',
  1868. 'hasdst' => true,
  1869. 'dstlongname' => "Irish Summer Time",
  1870. 'dstshortname' => 'IST' ),
  1871. 'Europe/Lisbon' => array(
  1872. 'offset' => 0,
  1873. 'longname' => "Western European Time",
  1874. 'shortname' => 'WET',
  1875. 'hasdst' => true,
  1876. 'dstlongname' => "Western European Summer Time",
  1877. 'dstshortname' => 'WEST' ),
  1878. 'Europe/London' => array(
  1879. 'offset' => 0,
  1880. 'longname' => "Greenwich Mean Time",
  1881. 'shortname' => 'GMT',
  1882. 'hasdst' => true,
  1883. 'dstlongname' => "British Summer Time",
  1884. 'dstshortname' => 'BST' ),
  1885. 'GB' => array(
  1886. 'offset' => 0,
  1887. 'longname' => "Greenwich Mean Time",
  1888. 'shortname' => 'GMT',
  1889. 'hasdst' => true,
  1890. 'dstlongname' => "British Summer Time",
  1891. 'dstshortname' => 'BST' ),
  1892. 'GB-Eire' => array(
  1893. 'offset' => 0,
  1894. 'longname' => "Greenwich Mean Time",
  1895. 'shortname' => 'GMT',
  1896. 'hasdst' => true,
  1897. 'dstlongname' => "British Summer Time",
  1898. 'dstshortname' => 'BST' ),
  1899. 'GMT' => array(
  1900. 'offset' => 0,
  1901. 'longname' => "Greenwich Mean Time",
  1902. 'shortname' => 'GMT',
  1903. 'hasdst' => false ),
  1904. 'GMT0' => array(
  1905. 'offset' => 0,
  1906. 'longname' => "GMT+00:00",
  1907. 'shortname' => 'GMT+00:00',
  1908. 'hasdst' => false ),
  1909. 'Greenwich' => array(
  1910. 'offset' => 0,
  1911. 'longname' => "Greenwich Mean Time",
  1912. 'shortname' => 'GMT',
  1913. 'hasdst' => false ),
  1914. 'Iceland' => array(
  1915. 'offset' => 0,
  1916. 'longname' => "Greenwich Mean Time",
  1917. 'shortname' => 'GMT',
  1918. 'hasdst' => false ),
  1919. 'Portugal' => array(
  1920. 'offset' => 0,
  1921. 'longname' => "Western European Time",
  1922. 'shortname' => 'WET',
  1923. 'hasdst' => true,
  1924. 'dstlongname' => "Western European Summer Time",
  1925. 'dstshortname' => 'WEST' ),
  1926. 'UCT' => array(
  1927. 'offset' => 0,
  1928. 'longname' => "Coordinated Universal Time",
  1929. 'shortname' => 'UTC',
  1930. 'hasdst' => false ),
  1931. 'UTC' => array(
  1932. 'offset' => 0,
  1933. 'longname' => "Coordinated Universal Time",
  1934. 'shortname' => 'UTC',
  1935. 'hasdst' => false ),
  1936. 'Universal' => array(
  1937. 'offset' => 0,
  1938. 'longname' => "Coordinated Universal Time",
  1939. 'shortname' => 'UTC',
  1940. 'hasdst' => false ),
  1941. 'WET' => array(
  1942. 'offset' => 0,
  1943. 'longname' => "Western European Time",
  1944. 'shortname' => 'WET',
  1945. 'hasdst' => true,
  1946. 'dstlongname' => "Western European Summer Time",
  1947. 'dstshortname' => 'WEST' ),
  1948. 'Zulu' => array(
  1949. 'offset' => 0,
  1950. 'longname' => "Coordinated Universal Time",
  1951. 'shortname' => 'UTC',
  1952. 'hasdst' => false ),
  1953. 'Africa/Algiers' => array(
  1954. 'offset' => 3600000,
  1955. 'longname' => "Central European Time",
  1956. 'shortname' => 'CET',
  1957. 'hasdst' => false ),
  1958. 'Africa/Bangui' => array(
  1959. 'offset' => 3600000,
  1960. 'longname' => "Western African Time",
  1961. 'shortname' => 'WAT',
  1962. 'hasdst' => false ),
  1963. 'Africa/Brazzaville' => array(
  1964. 'offset' => 3600000,
  1965. 'longname' => "Western African Time",
  1966. 'shortname' => 'WAT',
  1967. 'hasdst' => false ),
  1968. 'Africa/Ceuta' => array(
  1969. 'offset' => 3600000,
  1970. 'longname' => "Central European Time",
  1971. 'shortname' => 'CET',
  1972. 'hasdst' => true,
  1973. 'dstlongname' => "Central European Summer Time",
  1974. 'dstshortname' => 'CEST' ),
  1975. 'Africa/Douala' => array(
  1976. 'offset' => 3600000,
  1977. 'longname' => "Western African Time",
  1978. 'shortname' => 'WAT',
  1979. 'hasdst' => false ),
  1980. 'Africa/Kinshasa' => array(
  1981. 'offset' => 3600000,
  1982. 'longname' => "Western African Time",
  1983. 'shortname' => 'WAT',
  1984. 'hasdst' => false ),
  1985. 'Africa/Lagos' => array(
  1986. 'offset' => 3600000,
  1987. 'longname' => "Western African Time",
  1988. 'shortname' => 'WAT',
  1989. 'hasdst' => false ),
  1990. 'Africa/Libreville' => array(
  1991. 'offset' => 3600000,
  1992. 'longname' => "Western African Time",
  1993. 'shortname' => 'WAT',
  1994. 'hasdst' => false ),
  1995. 'Africa/Luanda' => array(
  1996. 'offset' => 3600000,
  1997. 'longname' => "Western African Time",
  1998. 'shortname' => 'WAT',
  1999. 'hasdst' => false ),
  2000. 'Africa/Malabo' => array(
  2001. 'offset' => 3600000,
  2002. 'longname' => "Western African Time",
  2003. 'shortname' => 'WAT',
  2004. 'hasdst' => false ),
  2005. 'Africa/Ndjamena' => array(
  2006. 'offset' => 3600000,
  2007. 'longname' => "Western African Time",
  2008. 'shortname' => 'WAT',
  2009. 'hasdst' => false ),
  2010. 'Africa/Niamey' => array(
  2011. 'offset' => 3600000,
  2012. 'longname' => "Western African Time",
  2013. 'shortname' => 'WAT',
  2014. 'hasdst' => false ),
  2015. 'Africa/Porto-Novo' => array(
  2016. 'offset' => 3600000,
  2017. 'longname' => "Western African Time",
  2018. 'shortname' => 'WAT',
  2019. 'hasdst' => false ),
  2020. 'Africa/Tunis' => array(
  2021. 'offset' => 3600000,
  2022. 'longname' => "Central European Time",
  2023. 'shortname' => 'CET',
  2024. 'hasdst' => false ),
  2025. 'Africa/Windhoek' => array(
  2026. 'offset' => 3600000,
  2027. 'longname' => "Western African Time",
  2028. 'shortname' => 'WAT',
  2029. 'hasdst' => true,
  2030. 'dstlongname' => "Western African Summer Time",
  2031. 'dstshortname' => 'WAST' ),
  2032. 'Arctic/Longyearbyen' => array(
  2033. 'offset' => 3600000,
  2034. 'longname' => "Central European Time",
  2035. 'shortname' => 'CET',
  2036. 'hasdst' => true,
  2037. 'dstlongname' => "Central European Summer Time",
  2038. 'dstshortname' => 'CEST' ),
  2039. 'Atlantic/Jan_Mayen' => array(
  2040. 'offset' => 3600000,
  2041. 'longname' => "Eastern Greenland Time",
  2042. 'shortname' => 'EGT',
  2043. 'hasdst' => true,
  2044. 'dstlongname' => "Eastern Greenland Summer Time",
  2045. 'dstshortname' => 'EGST' ),
  2046. 'CET' => array(
  2047. 'offset' => 3600000,
  2048. 'longname' => "Central European Time",
  2049. 'shortname' => 'CET',
  2050. 'hasdst' => true,
  2051. 'dstlongname' => "Central European Summer Time",
  2052. 'dstshortname' => 'CEST' ),
  2053. 'ECT' => array(
  2054. 'offset' => 3600000,
  2055. 'longname' => "Central European Time",
  2056. 'shortname' => 'CET',
  2057. 'hasdst' => true,
  2058. 'dstlongname' => "Central European Summer Time",
  2059. 'dstshortname' => 'CEST' ),
  2060. 'Etc/GMT-1' => array(
  2061. 'offset' => 3600000,
  2062. 'longname' => "GMT+01:00",
  2063. 'shortname' => 'GMT+01:00',
  2064. 'hasdst' => false ),
  2065. 'Europe/Amsterdam' => array(
  2066. 'offset' => 3600000,
  2067. 'longname' => "Central European Time",
  2068. 'shortname' => 'CET',
  2069. 'hasdst' => true,
  2070. 'dstlongname' => "Central European Summer Time",
  2071. 'dstshortname' => 'CEST' ),
  2072. 'Europe/Andorra' => array(
  2073. 'offset' => 3600000,
  2074. 'longname' => "Central European Time",
  2075. 'shortname' => 'CET',
  2076. 'hasdst' => true,
  2077. 'dstlongname' => "Central European Summer Time",
  2078. 'dstshortname' => 'CEST' ),
  2079. 'Europe/Belgrade' => array(
  2080. 'offset' => 3600000,
  2081. 'longname' => "Central European Time",
  2082. 'shortname' => 'CET',
  2083. 'hasdst' => true,
  2084. 'dstlongname' => "Central European Summer Time",
  2085. 'dstshortname' => 'CEST' ),
  2086. 'Europe/Berlin' => array(
  2087. 'offset' => 3600000,
  2088. 'longname' => "Central European Time",
  2089. 'shortname' => 'CET',
  2090. 'hasdst' => true,
  2091. 'dstlongname' => "Central European Summer Time",
  2092. 'dstshortname' => 'CEST' ),
  2093. 'Europe/Bratislava' => array(
  2094. 'offset' => 3600000,
  2095. 'longname' => "Central European Time",
  2096. 'shortname' => 'CET',
  2097. 'hasdst' => true,
  2098. 'dstlongname' => "Central European Summer Time",
  2099. 'dstshortname' => 'CEST' ),
  2100. 'Europe/Brussels' => array(
  2101. 'offset' => 3600000,
  2102. 'longname' => "Central European Time",
  2103. 'shortname' => 'CET',
  2104. 'hasdst' => true,
  2105. 'dstlongname' => "Central European Summer Time",
  2106. 'dstshortname' => 'CEST' ),
  2107. 'Europe/Budapest' => array(
  2108. 'offset' => 3600000,
  2109. 'longname' => "Central European Time",
  2110. 'shortname' => 'CET',
  2111. 'hasdst' => true,
  2112. 'dstlongname' => "Central European Summer Time",
  2113. 'dstshortname' => 'CEST' ),
  2114. 'Europe/Copenhagen' => array(
  2115. 'offset' => 3600000,
  2116. 'longname' => "Central European Time",
  2117. 'shortname' => 'CET',
  2118. 'hasdst' => true,
  2119. 'dstlongname' => "Central European Summer Time",
  2120. 'dstshortname' => 'CEST' ),
  2121. 'Europe/Gibraltar' => array(
  2122. 'offset' => 3600000,
  2123. 'longname' => "Central European Time",
  2124. 'shortname' => 'CET',
  2125. 'hasdst' => true,
  2126. 'dstlongname' => "Central European Summer Time",
  2127. 'dstshortname' => 'CEST' ),
  2128. 'Europe/Ljubljana' => array(
  2129. 'offset' => 3600000,
  2130. 'longname' => "Central European Time",
  2131. 'shortname' => 'CET',
  2132. 'hasdst' => true,
  2133. 'dstlongname' => "Central European Summer Time",
  2134. 'dstshortname' => 'CEST' ),
  2135. 'Europe/Luxembourg' => array(
  2136. 'offset' => 3600000,
  2137. 'longname' => "Central European Time",
  2138. 'shortname' => 'CET',
  2139. 'hasdst' => true,
  2140. 'dstlongname' => "Central European Summer Time",
  2141. 'dstshortname' => 'CEST' ),
  2142. 'Europe/Madrid' => array(
  2143. 'offset' => 3600000,
  2144. 'longname' => "Central European Time",
  2145. 'shortname' => 'CET',
  2146. 'hasdst' => true,
  2147. 'dstlongname' => "Central European Summer Time",
  2148. 'dstshortname' => 'CEST' ),
  2149. 'Europe/Malta' => array(
  2150. 'offset' => 3600000,
  2151. 'longname' => "Central European Time",
  2152. 'shortname' => 'CET',
  2153. 'hasdst' => true,
  2154. 'dstlongname' => "Central European Summer Time",
  2155. 'dstshortname' => 'CEST' ),
  2156. 'Europe/Monaco' => array(
  2157. 'offset' => 3600000,
  2158. 'longname' => "Central European Time",
  2159. 'shortname' => 'CET',
  2160. 'hasdst' => true,
  2161. 'dstlongname' => "Central European Summer Time",
  2162. 'dstshortname' => 'CEST' ),
  2163. 'Europe/Oslo' => array(
  2164. 'offset' => 3600000,
  2165. 'longname' => "Central European Time",
  2166. 'shortname' => 'CET',
  2167. 'hasdst' => true,
  2168. 'dstlongname' => "Central European Summer Time",
  2169. 'dstshortname' => 'CEST' ),
  2170. 'Europe/Paris' => array(
  2171. 'offset' => 3600000,
  2172. 'longname' => "Central European Time",
  2173. 'shortname' => 'CET',
  2174. 'hasdst' => true,
  2175. 'dstlongname' => "Central European Summer Time",
  2176. 'dstshortname' => 'CEST' ),
  2177. 'Europe/Prague' => array(
  2178. 'offset' => 3600000,
  2179. 'longname' => "Central European Time",
  2180. 'shortname' => 'CET',
  2181. 'hasdst' => true,
  2182. 'dstlongname' => "Central European Summer Time",
  2183. 'dstshortname' => 'CEST' ),
  2184. 'Europe/Rome' => array(
  2185. 'offset' => 3600000,
  2186. 'longname' => "Central European Time",
  2187. 'shortname' => 'CET',
  2188. 'hasdst' => true,
  2189. 'dstlongname' => "Central European Summer Time",
  2190. 'dstshortname' => 'CEST' ),
  2191. 'Europe/San_Marino' => array(
  2192. 'offset' => 3600000,
  2193. 'longname' => "Central European Time",
  2194. 'shortname' => 'CET',
  2195. 'hasdst' => true,
  2196. 'dstlongname' => "Central European Summer Time",
  2197. 'dstshortname' => 'CEST' ),
  2198. 'Europe/Sarajevo' => array(
  2199. 'offset' => 3600000,
  2200. 'longname' => "Central European Time",
  2201. 'shortname' => 'CET',
  2202. 'hasdst' => true,
  2203. 'dstlongname' => "Central European Summer Time",
  2204. 'dstshortname' => 'CEST' ),
  2205. 'Europe/Skopje' => array(
  2206. 'offset' => 3600000,
  2207. 'longname' => "Central European Time",
  2208. 'shortname' => 'CET',
  2209. 'hasdst' => true,
  2210. 'dstlongname' => "Central European Summer Time",
  2211. 'dstshortname' => 'CEST' ),
  2212. 'Europe/Stockholm' => array(
  2213. 'offset' => 3600000,
  2214. 'longname' => "Central European Time",
  2215. 'shortname' => 'CET',
  2216. 'hasdst' => true,
  2217. 'dstlongname' => "Central European Summer Time",
  2218. 'dstshortname' => 'CEST' ),
  2219. 'Europe/Tirane' => array(
  2220. 'offset' => 3600000,
  2221. 'longname' => "Central European Time",
  2222. 'shortname' => 'CET',
  2223. 'hasdst' => true,
  2224. 'dstlongname' => "Central European Summer Time",
  2225. 'dstshortname' => 'CEST' ),
  2226. 'Europe/Vaduz' => array(
  2227. 'offset' => 3600000,
  2228. 'longname' => "Central European Time",
  2229. 'shortname' => 'CET',
  2230. 'hasdst' => true,
  2231. 'dstlongname' => "Central European Summer Time",
  2232. 'dstshortname' => 'CEST' ),
  2233. 'Europe/Vatican' => array(
  2234. 'offset' => 3600000,
  2235. 'longname' => "Central European Time",
  2236. 'shortname' => 'CET',
  2237. 'hasdst' => true,
  2238. 'dstlongname' => "Central European Summer Time",
  2239. 'dstshortname' => 'CEST' ),
  2240. 'Europe/Vienna' => array(
  2241. 'offset' => 3600000,
  2242. 'longname' => "Central European Time",
  2243. 'shortname' => 'CET',
  2244. 'hasdst' => true,
  2245. 'dstlongname' => "Central European Summer Time",
  2246. 'dstshortname' => 'CEST' ),
  2247. 'Europe/Warsaw' => array(
  2248. 'offset' => 3600000,
  2249. 'longname' => "Central European Time",
  2250. 'shortname' => 'CET',
  2251. 'hasdst' => true,
  2252. 'dstlongname' => "Central European Summer Time",
  2253. 'dstshortname' => 'CEST' ),
  2254. 'Europe/Zagreb' => array(
  2255. 'offset' => 3600000,
  2256. 'longname' => "Central European Time",
  2257. 'shortname' => 'CET',
  2258. 'hasdst' => true,
  2259. 'dstlongname' => "Central European Summer Time",
  2260. 'dstshortname' => 'CEST' ),
  2261. 'Europe/Zurich' => array(
  2262. 'offset' => 3600000,
  2263. 'longname' => "Central European Time",
  2264. 'shortname' => 'CET',
  2265. 'hasdst' => true,
  2266. 'dstlongname' => "Central European Summer Time",
  2267. 'dstshortname' => 'CEST' ),
  2268. 'MET' => array(
  2269. 'offset' => 3600000,
  2270. 'longname' => "Middle Europe Time",
  2271. 'shortname' => 'MET',
  2272. 'hasdst' => true,
  2273. 'dstlongname' => "Middle Europe Summer Time",
  2274. 'dstshortname' => 'MEST' ),
  2275. 'Poland' => array(
  2276. 'offset' => 3600000,
  2277. 'longname' => "Central European Time",
  2278. 'shortname' => 'CET',
  2279. 'hasdst' => true,
  2280. 'dstlongname' => "Central European Summer Time",
  2281. 'dstshortname' => 'CEST' ),
  2282. 'ART' => array(
  2283. 'offset' => 7200000,
  2284. 'longname' => "Eastern European Time",
  2285. 'shortname' => 'EET',
  2286. 'hasdst' => true,
  2287. 'dstlongname' => "Eastern European Summer Time",
  2288. 'dstshortname' => 'EEST' ),
  2289. 'Africa/Blantyre' => array(
  2290. 'offset' => 7200000,
  2291. 'longname' => "Central African Time",
  2292. 'shortname' => 'CAT',
  2293. 'hasdst' => false ),
  2294. 'Africa/Bujumbura' => array(
  2295. 'offset' => 7200000,
  2296. 'longname' => "Central African Time",
  2297. 'shortname' => 'CAT',
  2298. 'hasdst' => false ),
  2299. 'Africa/Cairo' => array(
  2300. 'offset' => 7200000,
  2301. 'longname' => "Eastern European Time",
  2302. 'shortname' => 'EET',
  2303. 'hasdst' => true,
  2304. 'dstlongname' => "Eastern European Summer Time",
  2305. 'dstshortname' => 'EEST' ),
  2306. 'Africa/Gaborone' => array(
  2307. 'offset' => 7200000,
  2308. 'longname' => "Central African Time",
  2309. 'shortname' => 'CAT',
  2310. 'hasdst' => false ),
  2311. 'Africa/Harare' => array(
  2312. 'offset' => 7200000,
  2313. 'longname' => "Central African Time",
  2314. 'shortname' => 'CAT',
  2315. 'hasdst' => false ),
  2316. 'Africa/Johannesburg' => array(
  2317. 'offset' => 7200000,
  2318. 'longname' => "South Africa Standard Time",
  2319. 'shortname' => 'SAST',
  2320. 'hasdst' => false ),
  2321. 'Africa/Kigali' => array(
  2322. 'offset' => 7200000,
  2323. 'longname' => "Central African Time",
  2324. 'shortname' => 'CAT',
  2325. 'hasdst' => false ),
  2326. 'Africa/Lubumbashi' => array(
  2327. 'offset' => 7200000,
  2328. 'longname' => "Central African Time",
  2329. 'shortname' => 'CAT',
  2330. 'hasdst' => false ),
  2331. 'Africa/Lusaka' => array(
  2332. 'offset' => 7200000,
  2333. 'longname' => "Central African Time",
  2334. 'shortname' => 'CAT',
  2335. 'hasdst' => false ),
  2336. 'Africa/Maputo' => array(
  2337. 'offset' => 7200000,
  2338. 'longname' => "Central African Time",
  2339. 'shortname' => 'CAT',
  2340. 'hasdst' => false ),
  2341. 'Africa/Maseru' => array(
  2342. 'offset' => 7200000,
  2343. 'longname' => "South Africa Standard Time",
  2344. 'shortname' => 'SAST',
  2345. 'hasdst' => false ),
  2346. 'Africa/Mbabane' => array(
  2347. 'offset' => 7200000,
  2348. 'longname' => "South Africa Standard Time",
  2349. 'shortname' => 'SAST',
  2350. 'hasdst' => false ),
  2351. 'Africa/Tripoli' => array(
  2352. 'offset' => 7200000,
  2353. 'longname' => "Eastern European Time",
  2354. 'shortname' => 'EET',
  2355. 'hasdst' => false ),
  2356. 'Asia/Amman' => array(
  2357. 'offset' => 7200000,
  2358. 'longname' => "Eastern European Time",
  2359. 'shortname' => 'EET',
  2360. 'hasdst' => true,
  2361. 'dstlongname' => "Eastern European Summer Time",
  2362. 'dstshortname' => 'EEST' ),
  2363. 'Asia/Beirut' => array(
  2364. 'offset' => 7200000,
  2365. 'longname' => "Eastern European Time",
  2366. 'shortname' => 'EET',
  2367. 'hasdst' => true,
  2368. 'dstlongname' => "Eastern European Summer Time",
  2369. 'dstshortname' => 'EEST' ),
  2370. 'Asia/Damascus' => array(
  2371. 'offset' => 7200000,
  2372. 'longname' => "Eastern European Time",
  2373. 'shortname' => 'EET',
  2374. 'hasdst' => true,
  2375. 'dstlongname' => "Eastern European Summer Time",
  2376. 'dstshortname' => 'EEST' ),
  2377. 'Asia/Gaza' => array(
  2378. 'offset' => 7200000,
  2379. 'longname' => "Eastern European Time",
  2380. 'shortname' => 'EET',
  2381. 'hasdst' => true,
  2382. 'dstlongname' => "Eastern European Summer Time",
  2383. 'dstshortname' => 'EEST' ),
  2384. 'Asia/Istanbul' => array(
  2385. 'offset' => 7200000,
  2386. 'longname' => "Eastern European Time",
  2387. 'shortname' => 'EET',
  2388. 'hasdst' => true,
  2389. 'dstlongname' => "Eastern European Summer Time",
  2390. 'dstshortname' => 'EEST' ),
  2391. 'Asia/Jerusalem' => array(
  2392. 'offset' => 7200000,
  2393. 'longname' => "Israel Standard Time",
  2394. 'shortname' => 'IST',
  2395. 'hasdst' => true,
  2396. 'dstlongname' => "Israel Daylight Time",
  2397. 'dstshortname' => 'IDT' ),
  2398. 'Asia/Nicosia' => array(
  2399. 'offset' => 7200000,
  2400. 'longname' => "Eastern European Time",
  2401. 'shortname' => 'EET',
  2402. 'hasdst' => true,
  2403. 'dstlongname' => "Eastern European Summer Time",
  2404. 'dstshortname' => 'EEST' ),
  2405. 'Asia/Tel_Aviv' => array(
  2406. 'offset' => 7200000,
  2407. 'longname' => "Israel Standard Time",
  2408. 'shortname' => 'IST',
  2409. 'hasdst' => true,
  2410. 'dstlongname' => "Israel Daylight Time",
  2411. 'dstshortname' => 'IDT' ),
  2412. 'CAT' => array(
  2413. 'offset' => 7200000,
  2414. 'longname' => "Central African Time",
  2415. 'shortname' => 'CAT',
  2416. 'hasdst' => false ),
  2417. 'EET' => array(
  2418. 'offset' => 7200000,
  2419. 'longname' => "Eastern European Time",
  2420. 'shortname' => 'EET',
  2421. 'hasdst' => true,
  2422. 'dstlongname' => "Eastern European Summer Time",
  2423. 'dstshortname' => 'EEST' ),
  2424. 'Egypt' => array(
  2425. 'offset' => 7200000,
  2426. 'longname' => "Eastern European Time",
  2427. 'shortname' => 'EET',
  2428. 'hasdst' => true,
  2429. 'dstlongname' => "Eastern European Summer Time",
  2430. 'dstshortname' => 'EEST' ),
  2431. 'Etc/GMT-2' => array(
  2432. 'offset' => 7200000,
  2433. 'longname' => "GMT+02:00",
  2434. 'shortname' => 'GMT+02:00',
  2435. 'hasdst' => false ),
  2436. 'Europe/Athens' => array(
  2437. 'offset' => 7200000,
  2438. 'longname' => "Eastern European Time",
  2439. 'shortname' => 'EET',
  2440. 'hasdst' => true,
  2441. 'dstlongname' => "Eastern European Summer Time",
  2442. 'dstshortname' => 'EEST' ),
  2443. 'Europe/Bucharest' => array(
  2444. 'offset' => 7200000,
  2445. 'longname' => "Eastern European Time",
  2446. 'shortname' => 'EET',
  2447. 'hasdst' => true,
  2448. 'dstlongname' => "Eastern European Summer Time",
  2449. 'dstshortname' => 'EEST' ),
  2450. 'Europe/Chisinau' => array(
  2451. 'offset' => 7200000,
  2452. 'longname' => "Eastern European Time",
  2453. 'shortname' => 'EET',
  2454. 'hasdst' => true,
  2455. 'dstlongname' => "Eastern European Summer Time",
  2456. 'dstshortname' => 'EEST' ),
  2457. 'Europe/Helsinki' => array(
  2458. 'offset' => 7200000,
  2459. 'longname' => "Eastern European Time",
  2460. 'shortname' => 'EET',
  2461. 'hasdst' => true,
  2462. 'dstlongname' => "Eastern European Summer Time",
  2463. 'dstshortname' => 'EEST' ),
  2464. 'Europe/Istanbul' => array(
  2465. 'offset' => 7200000,
  2466. 'longname' => "Eastern European Time",
  2467. 'shortname' => 'EET',
  2468. 'hasdst' => true,
  2469. 'dstlongname' => "Eastern European Summer Time",
  2470. 'dstshortname' => 'EEST' ),
  2471. 'Europe/Kaliningrad' => array(
  2472. 'offset' => 7200000,
  2473. 'longname' => "Eastern European Time",
  2474. 'shortname' => 'EET',
  2475. 'hasdst' => true,
  2476. 'dstlongname' => "Eastern European Summer Time",
  2477. 'dstshortname' => 'EEST' ),
  2478. 'Europe/Kiev' => array(
  2479. 'offset' => 7200000,
  2480. 'longname' => "Eastern European Time",
  2481. 'shortname' => 'EET',
  2482. 'hasdst' => true,
  2483. 'dstlongname' => "Eastern European Summer Time",
  2484. 'dstshortname' => 'EEST' ),
  2485. 'Europe/Minsk' => array(
  2486. 'offset' => 7200000,
  2487. 'longname' => "Eastern European Time",
  2488. 'shortname' => 'EET',
  2489. 'hasdst' => true,
  2490. 'dstlongname' => "Eastern European Summer Time",
  2491. 'dstshortname' => 'EEST' ),
  2492. 'Europe/Nicosia' => array(
  2493. 'offset' => 7200000,
  2494. 'longname' => "Eastern European Time",
  2495. 'shortname' => 'EET',
  2496. 'hasdst' => true,
  2497. 'dstlongname' => "Eastern European Summer Time",
  2498. 'dstshortname' => 'EEST' ),
  2499. 'Europe/Riga' => array(
  2500. 'offset' => 7200000,
  2501. 'longname' => "Eastern European Time",
  2502. 'shortname' => 'EET',
  2503. 'hasdst' => true,
  2504. 'dstlongname' => "Eastern European Summer Time",
  2505. 'dstshortname' => 'EEST' ),
  2506. 'Europe/Simferopol' => array(
  2507. 'offset' => 7200000,
  2508. 'longname' => "Eastern European Time",
  2509. 'shortname' => 'EET',
  2510. 'hasdst' => true,
  2511. 'dstlongname' => "Eastern European Summer Time",
  2512. 'dstshortname' => 'EEST' ),
  2513. 'Europe/Sofia' => array(
  2514. 'offset' => 7200000,
  2515. 'longname' => "Eastern European Time",
  2516. 'shortname' => 'EET',
  2517. 'hasdst' => true,
  2518. 'dstlongname' => "Eastern European Summer Time",
  2519. 'dstshortname' => 'EEST' ),
  2520. 'Europe/Tallinn' => array(
  2521. 'offset' => 7200000,
  2522. 'longname' => "Eastern European Time",
  2523. 'shortname' => 'EET',
  2524. 'hasdst' => false ),
  2525. 'Europe/Tiraspol' => array(
  2526. 'offset' => 7200000,
  2527. 'longname' => "Eastern European Time",
  2528. 'shortname' => 'EET',
  2529. 'hasdst' => true,
  2530. 'dstlongname' => "Eastern European Summer Time",
  2531. 'dstshortname' => 'EEST' ),
  2532. 'Europe/Uzhgorod' => array(
  2533. 'offset' => 7200000,
  2534. 'longname' => "Eastern European Time",
  2535. 'shortname' => 'EET',
  2536. 'hasdst' => true,
  2537. 'dstlongname' => "Eastern European Summer Time",
  2538. 'dstshortname' => 'EEST' ),
  2539. 'Europe/Vilnius' => array(
  2540. 'offset' => 7200000,
  2541. 'longname' => "Eastern European Time",
  2542. 'shortname' => 'EET',
  2543. 'hasdst' => false ),
  2544. 'Europe/Zaporozhye' => array(
  2545. 'offset' => 7200000,
  2546. 'longname' => "Eastern European Time",
  2547. 'shortname' => 'EET',
  2548. 'hasdst' => true,
  2549. 'dstlongname' => "Eastern European Summer Time",
  2550. 'dstshortname' => 'EEST' ),
  2551. 'Israel' => array(
  2552. 'offset' => 7200000,
  2553. 'longname' => "Israel Standard Time",
  2554. 'shortname' => 'IST',
  2555. 'hasdst' => true,
  2556. 'dstlongname' => "Israel Daylight Time",
  2557. 'dstshortname' => 'IDT' ),
  2558. 'Libya' => array(
  2559. 'offset' => 7200000,
  2560. 'longname' => "Eastern European Time",
  2561. 'shortname' => 'EET',
  2562. 'hasdst' => false ),
  2563. 'Turkey' => 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. 'Africa/Addis_Ababa' => array(
  2571. 'offset' => 10800000,
  2572. 'longname' => "Eastern African Time",
  2573. 'shortname' => 'EAT',
  2574. 'hasdst' => false ),
  2575. 'Africa/Asmera' => array(
  2576. 'offset' => 10800000,
  2577. 'longname' => "Eastern African Time",
  2578. 'shortname' => 'EAT',
  2579. 'hasdst' => false ),
  2580. 'Africa/Dar_es_Salaam' => array(
  2581. 'offset' => 10800000,
  2582. 'longname' => "Eastern African Time",
  2583. 'shortname' => 'EAT',
  2584. 'hasdst' => false ),
  2585. 'Africa/Djibouti' => array(
  2586. 'offset' => 10800000,
  2587. 'longname' => "Eastern African Time",
  2588. 'shortname' => 'EAT',
  2589. 'hasdst' => false ),
  2590. 'Africa/Kampala' => array(
  2591. 'offset' => 10800000,
  2592. 'longname' => "Eastern African Time",
  2593. 'shortname' => 'EAT',
  2594. 'hasdst' => false ),
  2595. 'Africa/Khartoum' => array(
  2596. 'offset' => 10800000,
  2597. 'longname' => "Eastern African Time",
  2598. 'shortname' => 'EAT',
  2599. 'hasdst' => false ),
  2600. 'Africa/Mogadishu' => array(
  2601. 'offset' => 10800000,
  2602. 'longname' => "Eastern African Time",
  2603. 'shortname' => 'EAT',
  2604. 'hasdst' => false ),
  2605. 'Africa/Nairobi' => array(
  2606. 'offset' => 10800000,
  2607. 'longname' => "Eastern African Time",
  2608. 'shortname' => 'EAT',
  2609. 'hasdst' => false ),
  2610. 'Antarctica/Syowa' => array(
  2611. 'offset' => 10800000,
  2612. 'longname' => "Syowa Time",
  2613. 'shortname' => 'SYOT',
  2614. 'hasdst' => false ),
  2615. 'Asia/Aden' => array(
  2616. 'offset' => 10800000,
  2617. 'longname' => "Arabia Standard Time",
  2618. 'shortname' => 'AST',
  2619. 'hasdst' => false ),
  2620. 'Asia/Baghdad' => array(
  2621. 'offset' => 10800000,
  2622. 'longname' => "Arabia Standard Time",
  2623. 'shortname' => 'AST',
  2624. 'hasdst' => true,
  2625. 'dstlongname' => "Arabia Daylight Time",
  2626. 'dstshortname' => 'ADT' ),
  2627. 'Asia/Bahrain' => array(
  2628. 'offset' => 10800000,
  2629. 'longname' => "Arabia Standard Time",
  2630. 'shortname' => 'AST',
  2631. 'hasdst' => false ),
  2632. 'Asia/Kuwait' => array(
  2633. 'offset' => 10800000,
  2634. 'longname' => "Arabia Standard Time",
  2635. 'shortname' => 'AST',
  2636. 'hasdst' => false ),
  2637. 'Asia/Qatar' => array(
  2638. 'offset' => 10800000,
  2639. 'longname' => "Arabia Standard Time",
  2640. 'shortname' => 'AST',
  2641. 'hasdst' => false ),
  2642. 'Asia/Riyadh' => array(
  2643. 'offset' => 10800000,
  2644. 'longname' => "Arabia Standard Time",
  2645. 'shortname' => 'AST',
  2646. 'hasdst' => false ),
  2647. 'EAT' => array(
  2648. 'offset' => 10800000,
  2649. 'longname' => "Eastern African Time",
  2650. 'shortname' => 'EAT',
  2651. 'hasdst' => false ),
  2652. 'Etc/GMT-3' => array(
  2653. 'offset' => 10800000,
  2654. 'longname' => "GMT+03:00",
  2655. 'shortname' => 'GMT+03:00',
  2656. 'hasdst' => false ),
  2657. 'Europe/Moscow' => array(
  2658. 'offset' => 10800000,
  2659. 'longname' => "Moscow Standard Time",
  2660. 'shortname' => 'MSK',
  2661. 'hasdst' => true,
  2662. 'dstlongname' => "Moscow Daylight Time",
  2663. 'dstshortname' => 'MSD' ),
  2664. 'Indian/Antananarivo' => array(
  2665. 'offset' => 10800000,
  2666. 'longname' => "Eastern African Time",
  2667. 'shortname' => 'EAT',
  2668. 'hasdst' => false ),
  2669. 'Indian/Comoro' => array(
  2670. 'offset' => 10800000,
  2671. 'longname' => "Eastern African Time",
  2672. 'shortname' => 'EAT',
  2673. 'hasdst' => false ),
  2674. 'Indian/Mayotte' => array(
  2675. 'offset' => 10800000,
  2676. 'longname' => "Eastern African Time",
  2677. 'shortname' => 'EAT',
  2678. 'hasdst' => false ),
  2679. 'W-SU' => array(
  2680. 'offset' => 10800000,
  2681. 'longname' => "Moscow Standard Time",
  2682. 'shortname' => 'MSK',
  2683. 'hasdst' => true,
  2684. 'dstlongname' => "Moscow Daylight Time",
  2685. 'dstshortname' => 'MSD' ),
  2686. 'Asia/Riyadh87' => array(
  2687. 'offset' => 11224000,
  2688. 'longname' => "GMT+03:07",
  2689. 'shortname' => 'GMT+03:07',
  2690. 'hasdst' => false ),
  2691. 'Asia/Riyadh88' => array(
  2692. 'offset' => 11224000,
  2693. 'longname' => "GMT+03:07",
  2694. 'shortname' => 'GMT+03:07',
  2695. 'hasdst' => false ),
  2696. 'Asia/Riyadh89' => array(
  2697. 'offset' => 11224000,
  2698. 'longname' => "GMT+03:07",
  2699. 'shortname' => 'GMT+03:07',
  2700. 'hasdst' => false ),
  2701. 'Mideast/Riyadh87' => array(
  2702. 'offset' => 11224000,
  2703. 'longname' => "GMT+03:07",
  2704. 'shortname' => 'GMT+03:07',
  2705. 'hasdst' => false ),
  2706. 'Mideast/Riyadh88' => array(
  2707. 'offset' => 11224000,
  2708. 'longname' => "GMT+03:07",
  2709. 'shortname' => 'GMT+03:07',
  2710. 'hasdst' => false ),
  2711. 'Mideast/Riyadh89' => array(
  2712. 'offset' => 11224000,
  2713. 'longname' => "GMT+03:07",
  2714. 'shortname' => 'GMT+03:07',
  2715. 'hasdst' => false ),
  2716. 'Asia/Tehran' => array(
  2717. 'offset' => 12600000,
  2718. 'longname' => "Iran Time",
  2719. 'shortname' => 'IRT',
  2720. 'hasdst' => true,
  2721. 'dstlongname' => "Iran Sumer Time",
  2722. 'dstshortname' => 'IRST' ),
  2723. 'Iran' => array(
  2724. 'offset' => 12600000,
  2725. 'longname' => "Iran Time",
  2726. 'shortname' => 'IRT',
  2727. 'hasdst' => true,
  2728. 'dstlongname' => "Iran Sumer Time",
  2729. 'dstshortname' => 'IRST' ),
  2730. 'Asia/Aqtau' => array(
  2731. 'offset' => 14400000,
  2732. 'longname' => "Aqtau Time",
  2733. 'shortname' => 'AQTT',
  2734. 'hasdst' => true,
  2735. 'dstlongname' => "Aqtau Summer Time",
  2736. 'dstshortname' => 'AQTST' ),
  2737. 'Asia/Baku' => array(
  2738. 'offset' => 14400000,
  2739. 'longname' => "Azerbaijan Time",
  2740. 'shortname' => 'AZT',
  2741. 'hasdst' => true,
  2742. 'dstlongname' => "Azerbaijan Summer Time",
  2743. 'dstshortname' => 'AZST' ),
  2744. 'Asia/Dubai' => array(
  2745. 'offset' => 14400000,
  2746. 'longname' => "Gulf Standard Time",
  2747. 'shortname' => 'GST',
  2748. 'hasdst' => false ),
  2749. 'Asia/Muscat' => array(
  2750. 'offset' => 14400000,
  2751. 'longname' => "Gulf Standard Time",
  2752. 'shortname' => 'GST',
  2753. 'hasdst' => false ),
  2754. 'Asia/Tbilisi' => array(
  2755. 'offset' => 14400000,
  2756. 'longname' => "Georgia Time",
  2757. 'shortname' => 'GET',
  2758. 'hasdst' => true,
  2759. 'dstlongname' => "Georgia Summer Time",
  2760. 'dstshortname' => 'GEST' ),
  2761. 'Asia/Yerevan' => array(
  2762. 'offset' => 14400000,
  2763. 'longname' => "Armenia Time",
  2764. 'shortname' => 'AMT',
  2765. 'hasdst' => true,
  2766. 'dstlongname' => "Armenia Summer Time",
  2767. 'dstshortname' => 'AMST' ),
  2768. 'Etc/GMT-4' => array(
  2769. 'offset' => 14400000,
  2770. 'longname' => "GMT+04:00",
  2771. 'shortname' => 'GMT+04:00',
  2772. 'hasdst' => false ),
  2773. 'Europe/Samara' => array(
  2774. 'offset' => 14400000,
  2775. 'longname' => "Samara Time",
  2776. 'shortname' => 'SAMT',
  2777. 'hasdst' => true,
  2778. 'dstlongname' => "Samara Summer Time",
  2779. 'dstshortname' => 'SAMST' ),
  2780. 'Indian/Mahe' => array(
  2781. 'offset' => 14400000,
  2782. 'longname' => "Seychelles Time",
  2783. 'shortname' => 'SCT',
  2784. 'hasdst' => false ),
  2785. 'Indian/Mauritius' => array(
  2786. 'offset' => 14400000,
  2787. 'longname' => "Mauritius Time",
  2788. 'shortname' => 'MUT',
  2789. 'hasdst' => false ),
  2790. 'Indian/Reunion' => array(
  2791. 'offset' => 14400000,
  2792. 'longname' => "Reunion Time",
  2793. 'shortname' => 'RET',
  2794. 'hasdst' => false ),
  2795. 'NET' => array(
  2796. 'offset' => 14400000,
  2797. 'longname' => "Armenia Time",
  2798. 'shortname' => 'AMT',
  2799. 'hasdst' => true,
  2800. 'dstlongname' => "Armenia Summer Time",
  2801. 'dstshortname' => 'AMST' ),
  2802. 'Asia/Kabul' => array(
  2803. 'offset' => 16200000,
  2804. 'longname' => "Afghanistan Time",
  2805. 'shortname' => 'AFT',
  2806. 'hasdst' => false ),
  2807. 'Asia/Aqtobe' => array(
  2808. 'offset' => 18000000,
  2809. 'longname' => "Aqtobe Time",
  2810. 'shortname' => 'AQTT',
  2811. 'hasdst' => true,
  2812. 'dstlongname' => "Aqtobe Summer Time",
  2813. 'dstshortname' => 'AQTST' ),
  2814. 'Asia/Ashgabat' => array(
  2815. 'offset' => 18000000,
  2816. 'longname' => "Turkmenistan Time",
  2817. 'shortname' => 'TMT',
  2818. 'hasdst' => false ),
  2819. 'Asia/Ashkhabad' => array(
  2820. 'offset' => 18000000,
  2821. 'longname' => "Turkmenistan Time",
  2822. 'shortname' => 'TMT',
  2823. 'hasdst' => false ),
  2824. 'Asia/Bishkek' => array(
  2825. 'offset' => 18000000,
  2826. 'longname' => "Kirgizstan Time",
  2827. 'shortname' => 'KGT',
  2828. 'hasdst' => true,
  2829. 'dstlongname' => "Kirgizstan Summer Time",
  2830. 'dstshortname' => 'KGST' ),
  2831. 'Asia/Dushanbe' => array(
  2832. 'offset' => 18000000,
  2833. 'longname' => "Tajikistan Time",
  2834. 'shortname' => 'TJT',
  2835. 'hasdst' => false ),
  2836. 'Asia/Karachi' => array(
  2837. 'offset' => 18000000,
  2838. 'longname' => "Pakistan Time",
  2839. 'shortname' => 'PKT',
  2840. 'hasdst' => false ),
  2841. 'Asia/Samarkand' => array(
  2842. 'offset' => 18000000,
  2843. 'longname' => "Turkmenistan Time",
  2844. 'shortname' => 'TMT',
  2845. 'hasdst' => false ),
  2846. 'Asia/Tashkent' => array(
  2847. 'offset' => 18000000,
  2848. 'longname' => "Uzbekistan Time",
  2849. 'shortname' => 'UZT',
  2850. 'hasdst' => false ),
  2851. 'Asia/Yekaterinburg' => array(
  2852. 'offset' => 18000000,
  2853. 'longname' => "Yekaterinburg Time",
  2854. 'shortname' => 'YEKT',
  2855. 'hasdst' => true,
  2856. 'dstlongname' => "Yekaterinburg Summer Time",
  2857. 'dstshortname' => 'YEKST' ),
  2858. 'Etc/GMT-5' => array(
  2859. 'offset' => 18000000,
  2860. 'longname' => "GMT+05:00",
  2861. 'shortname' => 'GMT+05:00',
  2862. 'hasdst' => false ),
  2863. 'Indian/Kerguelen' => array(
  2864. 'offset' => 18000000,
  2865. 'longname' => "French Southern & Antarctic Lands Time",
  2866. 'shortname' => 'TFT',
  2867. 'hasdst' => false ),
  2868. 'Indian/Maldives' => array(
  2869. 'offset' => 18000000,
  2870. 'longname' => "Maldives Time",
  2871. 'shortname' => 'MVT',
  2872. 'hasdst' => false ),
  2873. 'PLT' => array(
  2874. 'offset' => 18000000,
  2875. 'longname' => "Pakistan Time",
  2876. 'shortname' => 'PKT',
  2877. 'hasdst' => false ),
  2878. 'Asia/Calcutta' => array(
  2879. 'offset' => 19800000,
  2880. 'longname' => "India Standard Time",
  2881. 'shortname' => 'IST',
  2882. 'hasdst' => false ),
  2883. 'IST' => array(
  2884. 'offset' => 19800000,
  2885. 'longname' => "India Standard Time",
  2886. 'shortname' => 'IST',
  2887. 'hasdst' => false ),
  2888. 'Asia/Katmandu' => array(
  2889. 'offset' => 20700000,
  2890. 'longname' => "Nepal Time",
  2891. 'shortname' => 'NPT',
  2892. 'hasdst' => false ),
  2893. 'Antarctica/Mawson' => array(
  2894. 'offset' => 21600000,
  2895. 'longname' => "Mawson Time",
  2896. 'shortname' => 'MAWT',
  2897. 'hasdst' => false ),
  2898. 'Antarctica/Vostok' => array(
  2899. 'offset' => 21600000,
  2900. 'longname' => "Vostok time",
  2901. 'shortname' => 'VOST',
  2902. 'hasdst' => false ),
  2903. 'Asia/Almaty' => array(
  2904. 'offset' => 21600000,
  2905. 'longname' => "Alma-Ata Time",
  2906. 'shortname' => 'ALMT',
  2907. 'hasdst' => true,
  2908. 'dstlongname' => "Alma-Ata Summer Time",
  2909. 'dstshortname' => 'ALMST' ),
  2910. 'Asia/Colombo' => array(
  2911. 'offset' => 21600000,
  2912. 'longname' => "Sri Lanka Time",
  2913. 'shortname' => 'LKT',
  2914. 'hasdst' => false ),
  2915. 'Asia/Dacca' => array(
  2916. 'offset' => 21600000,
  2917. 'longname' => "Bangladesh Time",
  2918. 'shortname' => 'BDT',
  2919. 'hasdst' => false ),
  2920. 'Asia/Dhaka' => array(
  2921. 'offset' => 21600000,
  2922. 'longname' => "Bangladesh Time",
  2923. 'shortname' => 'BDT',
  2924. 'hasdst' => false ),
  2925. 'Asia/Novosibirsk' => array(
  2926. 'offset' => 21600000,
  2927. 'longname' => "Novosibirsk Time",
  2928. 'shortname' => 'NOVT',
  2929. 'hasdst' => true,
  2930. 'dstlongname' => "Novosibirsk Summer Time",
  2931. 'dstshortname' => 'NOVST' ),
  2932. 'Asia/Omsk' => array(
  2933. 'offset' => 21600000,
  2934. 'longname' => "Omsk Time",
  2935. 'shortname' => 'OMST',
  2936. 'hasdst' => true,
  2937. 'dstlongname' => "Omsk Summer Time",
  2938. 'dstshortname' => 'OMSST' ),
  2939. 'Asia/Thimbu' => array(
  2940. 'offset' => 21600000,
  2941. 'longname' => "Bhutan Time",
  2942. 'shortname' => 'BTT',
  2943. 'hasdst' => false ),
  2944. 'Asia/Thimphu' => array(
  2945. 'offset' => 21600000,
  2946. 'longname' => "Bhutan Time",
  2947. 'shortname' => 'BTT',
  2948. 'hasdst' => false ),
  2949. 'BST' => array(
  2950. 'offset' => 21600000,
  2951. 'longname' => "Bangladesh Time",
  2952. 'shortname' => 'BDT',
  2953. 'hasdst' => false ),
  2954. 'Etc/GMT-6' => array(
  2955. 'offset' => 21600000,
  2956. 'longname' => "GMT+06:00",
  2957. 'shortname' => 'GMT+06:00',
  2958. 'hasdst' => false ),
  2959. 'Indian/Chagos' => array(
  2960. 'offset' => 21600000,
  2961. 'longname' => "Indian Ocean Territory Time",
  2962. 'shortname' => 'IOT',
  2963. 'hasdst' => false ),
  2964. 'Asia/Rangoon' => array(
  2965. 'offset' => 23400000,
  2966. 'longname' => "Myanmar Time",
  2967. 'shortname' => 'MMT',
  2968. 'hasdst' => false ),
  2969. 'Indian/Cocos' => array(
  2970. 'offset' => 23400000,
  2971. 'longname' => "Cocos Islands Time",
  2972. 'shortname' => 'CCT',
  2973. 'hasdst' => false ),
  2974. 'Antarctica/Davis' => array(
  2975. 'offset' => 25200000,
  2976. 'longname' => "Davis Time",
  2977. 'shortname' => 'DAVT',
  2978. 'hasdst' => false ),
  2979. 'Asia/Bangkok' => array(
  2980. 'offset' => 25200000,
  2981. 'longname' => "Indochina Time",
  2982. 'shortname' => 'ICT',
  2983. 'hasdst' => false ),
  2984. 'Asia/Hovd' => array(
  2985. 'offset' => 25200000,
  2986. 'longname' => "Hovd Time",
  2987. 'shortname' => 'HOVT',
  2988. 'hasdst' => false ),
  2989. 'Asia/Jakarta' => array(
  2990. 'offset' => 25200000,
  2991. 'longname' => "West Indonesia Time",
  2992. 'shortname' => 'WIT',
  2993. 'hasdst' => false ),
  2994. 'Asia/Krasnoyarsk' => array(
  2995. 'offset' => 25200000,
  2996. 'longname' => "Krasnoyarsk Time",
  2997. 'shortname' => 'KRAT',
  2998. 'hasdst' => true,
  2999. 'dstlongname' => "Krasnoyarsk Summer Time",
  3000. 'dstshortname' => 'KRAST' ),
  3001. 'Asia/Phnom_Penh' => array(
  3002. 'offset' => 25200000,
  3003. 'longname' => "Indochina Time",
  3004. 'shortname' => 'ICT',
  3005. 'hasdst' => false ),
  3006. 'Asia/Pontianak' => array(
  3007. 'offset' => 25200000,
  3008. 'longname' => "West Indonesia Time",
  3009. 'shortname' => 'WIT',
  3010. 'hasdst' => false ),
  3011. 'Asia/Saigon' => array(
  3012. 'offset' => 25200000,
  3013. 'longname' => "Indochina Time",
  3014. 'shortname' => 'ICT',
  3015. 'hasdst' => false ),
  3016. 'Asia/Vientiane' => array(
  3017. 'offset' => 25200000,
  3018. 'longname' => "Indochina Time",
  3019. 'shortname' => 'ICT',
  3020. 'hasdst' => false ),
  3021. 'Etc/GMT-7' => array(
  3022. 'offset' => 25200000,
  3023. 'longname' => "GMT+07:00",
  3024. 'shortname' => 'GMT+07:00',
  3025. 'hasdst' => false ),
  3026. 'Indian/Christmas' => array(
  3027. 'offset' => 25200000,
  3028. 'longname' => "Christmas Island Time",
  3029. 'shortname' => 'CXT',
  3030. 'hasdst' => false ),
  3031. 'VST' => array(
  3032. 'offset' => 25200000,
  3033. 'longname' => "Indochina Time",
  3034. 'shortname' => 'ICT',
  3035. 'hasdst' => false ),
  3036. 'Antarctica/Casey' => array(
  3037. 'offset' => 28800000,
  3038. 'longname' => "Western Standard Time (Australia)",
  3039. 'shortname' => 'WST',
  3040. 'hasdst' => false ),
  3041. 'Asia/Brunei' => array(
  3042. 'offset' => 28800000,
  3043. 'longname' => "Brunei Time",
  3044. 'shortname' => 'BNT',
  3045. 'hasdst' => false ),
  3046. 'Asia/Chongqing' => array(
  3047. 'offset' => 28800000,
  3048. 'longname' => "China Standard Time",
  3049. 'shortname' => 'CST',
  3050. 'hasdst' => false ),
  3051. 'Asia/Chungking' => array(
  3052. 'offset' => 28800000,
  3053. 'longname' => "China Standard Time",
  3054. 'shortname' => 'CST',
  3055. 'hasdst' => false ),
  3056. 'Asia/Harbin' => array(
  3057. 'offset' => 28800000,
  3058. 'longname' => "China Standard Time",
  3059. 'shortname' => 'CST',
  3060. 'hasdst' => false ),
  3061. 'Asia/Hong_Kong' => array(
  3062. 'offset' => 28800000,
  3063. 'longname' => "Hong Kong Time",
  3064. 'shortname' => 'HKT',
  3065. 'hasdst' => false ),
  3066. 'Asia/Irkutsk' => array(
  3067. 'offset' => 28800000,
  3068. 'longname' => "Irkutsk Time",
  3069. 'shortname' => 'IRKT',
  3070. 'hasdst' => true,
  3071. 'dstlongname' => "Irkutsk Summer Time",
  3072. 'dstshortname' => 'IRKST' ),
  3073. 'Asia/Kashgar' => array(
  3074. 'offset' => 28800000,
  3075. 'longname' => "China Standard Time",
  3076. 'shortname' => 'CST',
  3077. 'hasdst' => false ),
  3078. 'Asia/Kuala_Lumpur' => array(
  3079. 'offset' => 28800000,
  3080. 'longname' => "Malaysia Time",
  3081. 'shortname' => 'MYT',
  3082. 'hasdst' => false ),
  3083. 'Asia/Kuching' => array(
  3084. 'offset' => 28800000,
  3085. 'longname' => "Malaysia Time",
  3086. 'shortname' => 'MYT',
  3087. 'hasdst' => false ),
  3088. 'Asia/Macao' => array(
  3089. 'offset' => 28800000,
  3090. 'longname' => "China Standard Time",
  3091. 'shortname' => 'CST',
  3092. 'hasdst' => false ),
  3093. 'Asia/Manila' => array(
  3094. 'offset' => 28800000,
  3095. 'longname' => "Philippines Time",
  3096. 'shortname' => 'PHT',
  3097. 'hasdst' => false ),
  3098. 'Asia/Shanghai' => array(
  3099. 'offset' => 28800000,
  3100. 'longname' => "China Standard Time",
  3101. 'shortname' => 'CST',
  3102. 'hasdst' => false ),
  3103. 'Asia/Singapore' => array(
  3104. 'offset' => 28800000,
  3105. 'longname' => "Singapore Time",
  3106. 'shortname' => 'SGT',
  3107. 'hasdst' => false ),
  3108. 'Asia/Taipei' => array(
  3109. 'offset' => 28800000,
  3110. 'longname' => "China Standard Time",
  3111. 'shortname' => 'CST',
  3112. 'hasdst' => false ),
  3113. 'Asia/Ujung_Pandang' => array(
  3114. 'offset' => 28800000,
  3115. 'longname' => "Central Indonesia Time",
  3116. 'shortname' => 'CIT',
  3117. 'hasdst' => false ),
  3118. 'Asia/Ulaanbaatar' => array(
  3119. 'offset' => 28800000,
  3120. 'longname' => "Ulaanbaatar Time",
  3121. 'shortname' => 'ULAT',
  3122. 'hasdst' => false ),
  3123. 'Asia/Ulan_Bator' => array(
  3124. 'offset' => 28800000,
  3125. 'longname' => "Ulaanbaatar Time",
  3126. 'shortname' => 'ULAT',
  3127. 'hasdst' => false ),
  3128. 'Asia/Urumqi' => array(
  3129. 'offset' => 28800000,
  3130. 'longname' => "China Standard Time",
  3131. 'shortname' => 'CST',
  3132. 'hasdst' => false ),
  3133. 'Australia/Perth' => array(
  3134. 'offset' => 28800000,
  3135. 'longname' => "Western Standard Time (Australia)",
  3136. 'shortname' => 'WST',
  3137. 'hasdst' => false ),
  3138. 'Australia/West' => array(
  3139. 'offset' => 28800000,
  3140. 'longname' => "Western Standard Time (Australia)",
  3141. 'shortname' => 'WST',
  3142. 'hasdst' => false ),
  3143. 'CTT' => array(
  3144. 'offset' => 28800000,
  3145. 'longname' => "China Standard Time",
  3146. 'shortname' => 'CST',
  3147. 'hasdst' => false ),
  3148. 'Etc/GMT-8' => array(
  3149. 'offset' => 28800000,
  3150. 'longname' => "GMT+08:00",
  3151. 'shortname' => 'GMT+08:00',
  3152. 'hasdst' => false ),
  3153. 'Hongkong' => array(
  3154. 'offset' => 28800000,
  3155. 'longname' => "Hong Kong Time",
  3156. 'shortname' => 'HKT',
  3157. 'hasdst' => false ),
  3158. 'PRC' => array(
  3159. 'offset' => 28800000,
  3160. 'longname' => "China Standard Time",
  3161. 'shortname' => 'CST',
  3162. 'hasdst' => false ),
  3163. 'Singapore' => array(
  3164. 'offset' => 28800000,
  3165. 'longname' => "Singapore Time",
  3166. 'shortname' => 'SGT',
  3167. 'hasdst' => false ),
  3168. 'Asia/Choibalsan' => array(
  3169. 'offset' => 32400000,
  3170. 'longname' => "Choibalsan Time",
  3171. 'shortname' => 'CHOT',
  3172. 'hasdst' => false ),
  3173. 'Asia/Dili' => array(
  3174. 'offset' => 32400000,
  3175. 'longname' => "East Timor Time",
  3176. 'shortname' => 'TPT',
  3177. 'hasdst' => false ),
  3178. 'Asia/Jayapura' => array(
  3179. 'offset' => 32400000,
  3180. 'longname' => "East Indonesia Time",
  3181. 'shortname' => 'EIT',
  3182. 'hasdst' => false ),
  3183. 'Asia/Pyongyang' => array(
  3184. 'offset' => 32400000,
  3185. 'longname' => "Korea Standard Time",
  3186. 'shortname' => 'KST',
  3187. 'hasdst' => false ),
  3188. 'Asia/Seoul' => array(
  3189. 'offset' => 32400000,
  3190. 'longname' => "Korea Standard Time",
  3191. 'shortname' => 'KST',
  3192. 'hasdst' => false ),
  3193. 'Asia/Tokyo' => array(
  3194. 'offset' => 32400000,
  3195. 'longname' => "Japan Standard Time",
  3196. 'shortname' => 'JST',
  3197. 'hasdst' => false ),
  3198. 'Asia/Yakutsk' => array(
  3199. 'offset' => 32400000,
  3200. 'longname' => "Yakutsk Time",
  3201. 'shortname' => 'YAKT',
  3202. 'hasdst' => true,
  3203. 'dstlongname' => "Yaktsk Summer Time",
  3204. 'dstshortname' => 'YAKST' ),
  3205. 'Etc/GMT-9' => array(
  3206. 'offset' => 32400000,
  3207. 'longname' => "GMT+09:00",
  3208. 'shortname' => 'GMT+09:00',
  3209. 'hasdst' => false ),
  3210. 'JST' => array(
  3211. 'offset' => 32400000,
  3212. 'longname' => "Japan Standard Time",
  3213. 'shortname' => 'JST',
  3214. 'hasdst' => false ),
  3215. 'Japan' => array(
  3216. 'offset' => 32400000,
  3217. 'longname' => "Japan Standard Time",
  3218. 'shortname' => 'JST',
  3219. 'hasdst' => false ),
  3220. 'Pacific/Palau' => array(
  3221. 'offset' => 32400000,
  3222. 'longname' => "Palau Time",
  3223. 'shortname' => 'PWT',
  3224. 'hasdst' => false ),
  3225. 'ROK' => array(
  3226. 'offset' => 32400000,
  3227. 'longname' => "Korea Standard Time",
  3228. 'shortname' => 'KST',
  3229. 'hasdst' => false ),
  3230. 'ACT' => array(
  3231. 'offset' => 34200000,
  3232. 'longname' => "Central Standard Time (Northern Territory)",
  3233. 'shortname' => 'CST',
  3234. 'hasdst' => false ),
  3235. 'Australia/Adelaide' => array(
  3236. 'offset' => 34200000,
  3237. 'longname' => "Central Standard Time (South Australia)",
  3238. 'shortname' => 'CST',
  3239. 'hasdst' => true,
  3240. 'dstlongname' => "Central Summer Time (South Australia)",
  3241. 'dstshortname' => 'CST' ),
  3242. 'Australia/Broken_Hill' => array(
  3243. 'offset' => 34200000,
  3244. 'longname' => "Central Standard Time (South Australia/New South Wales)",
  3245. 'shortname' => 'CST',
  3246. 'hasdst' => true,
  3247. 'dstlongname' => "Central Summer Time (South Australia/New South Wales)",
  3248. 'dstshortname' => 'CST' ),
  3249. 'Australia/Darwin' => array(
  3250. 'offset' => 34200000,
  3251. 'longname' => "Central Standard Time (Northern Territory)",
  3252. 'shortname' => 'CST',
  3253. 'hasdst' => false ),
  3254. 'Australia/North' => array(
  3255. 'offset' => 34200000,
  3256. 'longname' => "Central Standard Time (Northern Territory)",
  3257. 'shortname' => 'CST',
  3258. 'hasdst' => false ),
  3259. 'Australia/South' => array(
  3260. 'offset' => 34200000,
  3261. 'longname' => "Central Standard Time (South Australia)",
  3262. 'shortname' => 'CST',
  3263. 'hasdst' => true,
  3264. 'dstlongname' => "Central Summer Time (South Australia)",
  3265. 'dstshortname' => 'CST' ),
  3266. 'Australia/Yancowinna' => array(
  3267. 'offset' => 34200000,
  3268. 'longname' => "Central Standard Time (South Australia/New South Wales)",
  3269. 'shortname' => 'CST',
  3270. 'hasdst' => true,
  3271. 'dstlongname' => "Central Summer Time (South Australia/New South Wales)",
  3272. 'dstshortname' => 'CST' ),
  3273. 'AET' => array(
  3274. 'offset' => 36000000,
  3275. 'longname' => "Eastern Standard Time (New South Wales)",
  3276. 'shortname' => 'EST',
  3277. 'hasdst' => true,
  3278. 'dstlongname' => "Eastern Summer Time (New South Wales)",
  3279. 'dstshortname' => 'EST' ),
  3280. 'Antarctica/DumontDUrville' => array(
  3281. 'offset' => 36000000,
  3282. 'longname' => "Dumont-d'Urville Time",
  3283. 'shortname' => 'DDUT',
  3284. 'hasdst' => false ),
  3285. 'Asia/Sakhalin' => array(
  3286. 'offset' => 36000000,
  3287. 'longname' => "Sakhalin Time",
  3288. 'shortname' => 'SAKT',
  3289. 'hasdst' => true,
  3290. 'dstlongname' => "Sakhalin Summer Time",
  3291. 'dstshortname' => 'SAKST' ),
  3292. 'Asia/Vladivostok' => array(
  3293. 'offset' => 36000000,
  3294. 'longname' => "Vladivostok Time",
  3295. 'shortname' => 'VLAT',
  3296. 'hasdst' => true,
  3297. 'dstlongname' => "Vladivostok Summer Time",
  3298. 'dstshortname' => 'VLAST' ),
  3299. 'Australia/ACT' => array(
  3300. 'offset' => 36000000,
  3301. 'longname' => "Eastern Standard Time (New South Wales)",
  3302. 'shortname' => 'EST',
  3303. 'hasdst' => true,
  3304. 'dstlongname' => "Eastern Summer Time (New South Wales)",
  3305. 'dstshortname' => 'EST' ),
  3306. 'Australia/Brisbane' => array(
  3307. 'offset' => 36000000,
  3308. 'longname' => "Eastern Standard Time (Queensland)",
  3309. 'shortname' => 'EST',
  3310. 'hasdst' => false ),
  3311. 'Australia/Canberra' => array(
  3312. 'offset' => 36000000,
  3313. 'longname' => "Eastern Standard Time (New South Wales)",
  3314. 'shortname' => 'EST',
  3315. 'hasdst' => true,
  3316. 'dstlongname' => "Eastern Summer Time (New South Wales)",
  3317. 'dstshortname' => 'EST' ),
  3318. 'Australia/Hobart' => array(
  3319. 'offset' => 36000000,
  3320. 'longname' => "Eastern Standard Time (Tasmania)",
  3321. 'shortname' => 'EST',
  3322. 'hasdst' => true,
  3323. 'dstlongname' => "Eastern Summer Time (Tasmania)",
  3324. 'dstshortname' => 'EST' ),
  3325. 'Australia/Lindeman' => array(
  3326. 'offset' => 36000000,
  3327. 'longname' => "Eastern Standard Time (Queensland)",
  3328. 'shortname' => 'EST',
  3329. 'hasdst' => false ),
  3330. 'Australia/Melbourne' => array(
  3331. 'offset' => 36000000,
  3332. 'longname' => "Eastern Standard Time (Victoria)",
  3333. 'shortname' => 'EST',
  3334. 'hasdst' => true,
  3335. 'dstlongname' => "Eastern Summer Time (Victoria)",
  3336. 'dstshortname' => 'EST' ),
  3337. 'Australia/NSW' => array(
  3338. 'offset' => 36000000,
  3339. 'longname' => "Eastern Standard Time (New South Wales)",
  3340. 'shortname' => 'EST',
  3341. 'hasdst' => true,
  3342. 'dstlongname' => "Eastern Summer Time (New South Wales)",
  3343. 'dstshortname' => 'EST' ),
  3344. 'Australia/Queensland' => array(
  3345. 'offset' => 36000000,
  3346. 'longname' => "Eastern Standard Time (Queensland)",
  3347. 'shortname' => 'EST',
  3348. 'hasdst' => false ),
  3349. 'Australia/Sydney' => array(
  3350. 'offset' => 36000000,
  3351. 'longname' => "Eastern Standard Time (New South Wales)",
  3352. 'shortname' => 'EST',
  3353. 'hasdst' => true,
  3354. 'dstlongname' => "Eastern Summer Time (New South Wales)",
  3355. 'dstshortname' => 'EST' ),
  3356. 'Australia/Tasmania' => array(
  3357. 'offset' => 36000000,
  3358. 'longname' => "Eastern Standard Time (Tasmania)",
  3359. 'shortname' => 'EST',
  3360. 'hasdst' => true,
  3361. 'dstlongname' => "Eastern Summer Time (Tasmania)",
  3362. 'dstshortname' => 'EST' ),
  3363. 'Australia/Victoria' => array(
  3364. 'offset' => 36000000,
  3365. 'longname' => "Eastern Standard Time (Victoria)",
  3366. 'shortname' => 'EST',
  3367. 'hasdst' => true,
  3368. 'dstlongname' => "Eastern Summer Time (Victoria)",
  3369. 'dstshortname' => 'EST' ),
  3370. 'Etc/GMT-10' => array(
  3371. 'offset' => 36000000,
  3372. 'longname' => "GMT+10:00",
  3373. 'shortname' => 'GMT+10:00',
  3374. 'hasdst' => false ),
  3375. 'Pacific/Guam' => array(
  3376. 'offset' => 36000000,
  3377. 'longname' => "Chamorro Standard Time",
  3378. 'shortname' => 'ChST',
  3379. 'hasdst' => false ),
  3380. 'Pacific/Port_Moresby' => array(
  3381. 'offset' => 36000000,
  3382. 'longname' => "Papua New Guinea Time",
  3383. 'shortname' => 'PGT',
  3384. 'hasdst' => false ),
  3385. 'Pacific/Saipan' => array(
  3386. 'offset' => 36000000,
  3387. 'longname' => "Chamorro Standard Time",
  3388. 'shortname' => 'ChST',
  3389. 'hasdst' => false ),
  3390. 'Pacific/Truk' => array(
  3391. 'offset' => 36000000,
  3392. 'longname' => "Truk Time",
  3393. 'shortname' => 'TRUT',
  3394. 'hasdst' => false ),
  3395. 'Pacific/Yap' => array(
  3396. 'offset' => 36000000,
  3397. 'longname' => "Yap Time",
  3398. 'shortname' => 'YAPT',
  3399. 'hasdst' => false ),
  3400. 'Australia/LHI' => array(
  3401. 'offset' => 37800000,
  3402. 'longname' => "Load Howe Standard Time",
  3403. 'shortname' => 'LHST',
  3404. 'hasdst' => true,
  3405. 'dstlongname' => "Load Howe Summer Time",
  3406. 'dstshortname' => 'LHST' ),
  3407. 'Australia/Lord_Howe' => array(
  3408. 'offset' => 37800000,
  3409. 'longname' => "Load Howe Standard Time",
  3410. 'shortname' => 'LHST',
  3411. 'hasdst' => true,
  3412. 'dstlongname' => "Load Howe Summer Time",
  3413. 'dstshortname' => 'LHST' ),
  3414. 'Asia/Magadan' => array(
  3415. 'offset' => 39600000,
  3416. 'longname' => "Magadan Time",
  3417. 'shortname' => 'MAGT',
  3418. 'hasdst' => true,
  3419. 'dstlongname' => "Magadan Summer Time",
  3420. 'dstshortname' => 'MAGST' ),
  3421. 'Etc/GMT-11' => array(
  3422. 'offset' => 39600000,
  3423. 'longname' => "GMT+11:00",
  3424. 'shortname' => 'GMT+11:00',
  3425. 'hasdst' => false ),
  3426. 'Pacific/Efate' => array(
  3427. 'offset' => 39600000,
  3428. 'longname' => "Vanuatu Time",
  3429. 'shortname' => 'VUT',
  3430. 'hasdst' => false ),
  3431. 'Pacific/Guadalcanal' => array(
  3432. 'offset' => 39600000,
  3433. 'longname' => "Solomon Is. Time",
  3434. 'shortname' => 'SBT',
  3435. 'hasdst' => false ),
  3436. 'Pacific/Kosrae' => array(
  3437. 'offset' => 39600000,
  3438. 'longname' => "Kosrae Time",
  3439. 'shortname' => 'KOST',
  3440. 'hasdst' => false ),
  3441. 'Pacific/Noumea' => array(
  3442. 'offset' => 39600000,
  3443. 'longname' => "New Caledonia Time",
  3444. 'shortname' => 'NCT',
  3445. 'hasdst' => false ),
  3446. 'Pacific/Ponape' => array(
  3447. 'offset' => 39600000,
  3448. 'longname' => "Ponape Time",
  3449. 'shortname' => 'PONT',
  3450. 'hasdst' => false ),
  3451. 'SST' => array(
  3452. 'offset' => 39600000,
  3453. 'longname' => "Solomon Is. Time",
  3454. 'shortname' => 'SBT',
  3455. 'hasdst' => false ),
  3456. 'Pacific/Norfolk' => array(
  3457. 'offset' => 41400000,
  3458. 'longname' => "Norfolk Time",
  3459. 'shortname' => 'NFT',
  3460. 'hasdst' => false ),
  3461. 'Antarctica/McMurdo' => array(
  3462. 'offset' => 43200000,
  3463. 'longname' => "New Zealand Standard Time",
  3464. 'shortname' => 'NZST',
  3465. 'hasdst' => true,
  3466. 'dstlongname' => "New Zealand Daylight Time",
  3467. 'dstshortname' => 'NZDT' ),
  3468. 'Antarctica/South_Pole' => array(
  3469. 'offset' => 43200000,
  3470. 'longname' => "New Zealand Standard Time",
  3471. 'shortname' => 'NZST',
  3472. 'hasdst' => true,
  3473. 'dstlongname' => "New Zealand Daylight Time",
  3474. 'dstshortname' => 'NZDT' ),
  3475. 'Asia/Anadyr' => array(
  3476. 'offset' => 43200000,
  3477. 'longname' => "Anadyr Time",
  3478. 'shortname' => 'ANAT',
  3479. 'hasdst' => true,
  3480. 'dstlongname' => "Anadyr Summer Time",
  3481. 'dstshortname' => 'ANAST' ),
  3482. 'Asia/Kamchatka' => array(
  3483. 'offset' => 43200000,
  3484. 'longname' => "Petropavlovsk-Kamchatski Time",
  3485. 'shortname' => 'PETT',
  3486. 'hasdst' => true,
  3487. 'dstlongname' => "Petropavlovsk-Kamchatski Summer Time",
  3488. 'dstshortname' => 'PETST' ),
  3489. 'Etc/GMT-12' => array(
  3490. 'offset' => 43200000,
  3491. 'longname' => "GMT+12:00",
  3492. 'shortname' => 'GMT+12:00',
  3493. 'hasdst' => false ),
  3494. 'Kwajalein' => array(
  3495. 'offset' => 43200000,
  3496. 'longname' => "Marshall Islands Time",
  3497. 'shortname' => 'MHT',
  3498. 'hasdst' => false ),
  3499. 'NST' => array(
  3500. 'offset' => 43200000,
  3501. 'longname' => "New Zealand Standard Time",
  3502. 'shortname' => 'NZST',
  3503. 'hasdst' => true,
  3504. 'dstlongname' => "New Zealand Daylight Time",
  3505. 'dstshortname' => 'NZDT' ),
  3506. 'NZ' => array(
  3507. 'offset' => 43200000,
  3508. 'longname' => "New Zealand Standard Time",
  3509. 'shortname' => 'NZST',
  3510. 'hasdst' => true,
  3511. 'dstlongname' => "New Zealand Daylight Time",
  3512. 'dstshortname' => 'NZDT' ),
  3513. 'Pacific/Auckland' => array(
  3514. 'offset' => 43200000,
  3515. 'longname' => "New Zealand Standard Time",
  3516. 'shortname' => 'NZST',
  3517. 'hasdst' => true,
  3518. 'dstlongname' => "New Zealand Daylight Time",
  3519. 'dstshortname' => 'NZDT' ),
  3520. 'Pacific/Fiji' => array(
  3521. 'offset' => 43200000,
  3522. 'longname' => "Fiji Time",
  3523. 'shortname' => 'FJT',
  3524. 'hasdst' => false ),
  3525. 'Pacific/Funafuti' => array(
  3526. 'offset' => 43200000,
  3527. 'longname' => "Tuvalu Time",
  3528. 'shortname' => 'TVT',
  3529. 'hasdst' => false ),
  3530. 'Pacific/Kwajalein' => array(
  3531. 'offset' => 43200000,
  3532. 'longname' => "Marshall Islands Time",
  3533. 'shortname' => 'MHT',
  3534. 'hasdst' => false ),
  3535. 'Pacific/Majuro' => array(
  3536. 'offset' => 43200000,
  3537. 'longname' => "Marshall Islands Time",
  3538. 'shortname' => 'MHT',
  3539. 'hasdst' => false ),
  3540. 'Pacific/Nauru' => array(
  3541. 'offset' => 43200000,
  3542. 'longname' => "Nauru Time",
  3543. 'shortname' => 'NRT',
  3544. 'hasdst' => false ),
  3545. 'Pacific/Tarawa' => array(
  3546. 'offset' => 43200000,
  3547. 'longname' => "Gilbert Is. Time",
  3548. 'shortname' => 'GILT',
  3549. 'hasdst' => false ),
  3550. 'Pacific/Wake' => array(
  3551. 'offset' => 43200000,
  3552. 'longname' => "Wake Time",
  3553. 'shortname' => 'WAKT',
  3554. 'hasdst' => false ),
  3555. 'Pacific/Wallis' => array(
  3556. 'offset' => 43200000,
  3557. 'longname' => "Wallis & Futuna Time",
  3558. 'shortname' => 'WFT',
  3559. 'hasdst' => false ),
  3560. 'NZ-CHAT' => array(
  3561. 'offset' => 45900000,
  3562. 'longname' => "Chatham Standard Time",
  3563. 'shortname' => 'CHAST',
  3564. 'hasdst' => true,
  3565. 'dstlongname' => "Chatham Daylight Time",
  3566. 'dstshortname' => 'CHADT' ),
  3567. 'Pacific/Chatham' => array(
  3568. 'offset' => 45900000,
  3569. 'longname' => "Chatham Standard Time",
  3570. 'shortname' => 'CHAST',
  3571. 'hasdst' => true,
  3572. 'dstlongname' => "Chatham Daylight Time",
  3573. 'dstshortname' => 'CHADT' ),
  3574. 'Etc/GMT-13' => array(
  3575. 'offset' => 46800000,
  3576. 'longname' => "GMT+13:00",
  3577. 'shortname' => 'GMT+13:00',
  3578. 'hasdst' => false ),
  3579. 'Pacific/Enderbury' => array(
  3580. 'offset' => 46800000,
  3581. 'longname' => "Phoenix Is. Time",
  3582. 'shortname' => 'PHOT',
  3583. 'hasdst' => false ),
  3584. 'Pacific/Tongatapu' => array(
  3585. 'offset' => 46800000,
  3586. 'longname' => "Tonga Time",
  3587. 'shortname' => 'TOT',
  3588. 'hasdst' => false ),
  3589. 'Etc/GMT-14' => array(
  3590. 'offset' => 50400000,
  3591. 'longname' => "GMT+14:00",
  3592. 'shortname' => 'GMT+14:00',
  3593. 'hasdst' => false ),
  3594. 'Pacific/Kiritimati' => array(
  3595. 'offset' => 50400000,
  3596. 'longname' => "Line Is. Time",
  3597. 'shortname' => 'LINT',
  3598. 'hasdst' => false )
  3599. );
  3600. //
  3601. // Initialize default timezone
  3602. // First try _DATE_TIMEZONE_DEFAULT global,
  3603. // then PHP_TZ environment var, then TZ environment var
  3604. //
  3605. if(isset($_DATE_TIMEZONE_DEFAULT)
  3606. && Date_TimeZone::isValidID($_DATE_TIMEZONE_DEFAULT)
  3607. ) {
  3608. Date_TimeZone::setDefault($_DATE_TIMEZONE_DEFAULT);
  3609. } elseif (getenv('PHP_TZ') && Date_TimeZone::isValidID(getenv('PHP_TZ'))) {
  3610. Date_TimeZone::setDefault(getenv('PHP_TZ'));
  3611. } elseif (getenv('TZ') && Date_TimeZone::isValidID(getenv('TZ'))) {
  3612. Date_TimeZone::setDefault(getenv('TZ'));
  3613. } elseif (Date_TimeZone::isValidID(date('T'))) {
  3614. Date_TimeZone::setDefault(date('T'));
  3615. } else {
  3616. Date_TimeZone::setDefault('UTC');
  3617. }
  3618. //
  3619. // END
  3620. ?>