webForumDet fria alternativet

Skriva ut alla tidszoner

PHP

9 svar · 537 visningar · startad av Smultron

Medlem sedan juli 2002423 inlägg
Frågan#1

Finns det något smidigt sätt i PHP för att loopa upp alla tidzoner och skriva ut dessa som options i en select?

Medlem sedan aug. 2001145 inlägg
#2

De är väll bara att loopa från -12 till +11

Medlem sedan maj 2005562 inlägg
#3
$timezones = array();
for ($i=-12; $i<=11; $i++) {
	$timezones[] = sprintf("GMT %+d", $i);
}
Medlem sedan feb. 20066 inlägg
#4

En sökning på nätet visar att det inte är riktigt så enkelt.
Dels så finns det tidszoner som ligger 30 minuter mellan två andra, tex UTC − 3:30, Canada (NST—Newfoundland Standard Time), dels så finns det sommartid (+1 h från april till oktober på norra halvklotet och +1 h från oktober till april på södra, ungefär) och dels så går tidszonerna från UTC − 12 till UTC + 14.

Ta en titt på wikipedia och skapa sen an array med tidszonerna. Det är mitt råd i alla fall.

Medlem sedan aug. 2001145 inlägg
#5

-12 till +13 finns de i windows det räcker nog långt.

Skulle förvåna mig om smultron vill ha precis alla tidsoner som finns + vintertid/sommartid justering per halvklot, Ryssland delas ju också in i flera tillslut och finns nog ännu fler ställen som delas.

Om han vill nu vill ha precis allt så skulle jag tippa på att det bästa sättet är att köpa någon lista någonstanns. Att manuellt sitta och skapa en för allt skulle kräva på tok för mycket tid.

Medlem sedan maj 2005562 inlägg
#6

hmm .. hur går det där ihop ? måste ju betyda att det överlappar nånstans ? skumt..

/red
Dies_Irae: behöver ju inte göra det manuellt.. vill man bara ha UTC -12 till +14 .. tar det ju inte speciellt lång tid

/red2
finns lista på http://se.php.net/timezones med tidzoner

Medlem sedan aug. 2001145 inlägg
#7

Jo de är lite skumt men finns några konstiga öar i stillahavet någonstanns som säkert har problem med det där.

Sen menade jag inte manuellt till dig sl0k :) Menat till cenobite "Ta en titt på wikipedia och skapa sen an array med tidszonerna"

Medlem sedan maj 2005562 inlägg
#8

Dies_Irae skrev:

Jo de är lite skumt men finns några konstiga öar i stillahavet någonstanns som säkert har problem med det där.

Sen menade jag inte manuellt till dig sl0k :) Menat till cenobite "Ta en titt på wikipedia och skapa sen an array med tidszonerna"

men det e inte speciellt svårt det heller..

Medlem sedan aug. 2001145 inlägg
#9

Aldrig sakt att de är svårt, bara att de skulle kräva tok för mycket tid :)

Medlem sedan feb. 20066 inlägg
#10

Dies_Irae skrev:

Aldrig sakt att de är svårt, bara att de skulle kräva tok för mycket tid :)

Enligt länken till wikipedia så finns det 39 tidszoner, jag skulle gissa att det tar längre tid att leta upp en färdig array eller liknande med dem än att skriva en själv.

Skall man bara ha en lista med dem så räcker detta. Om man däremot skall räkna ut vad klockan är på ett visst ställe så måste man ta hänsyn till sommartid, och då blir det lite jobbigare.

259 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)