ottieni fuso orario dell’utente

Possibile duplicato:
Come posso determinare il fuso orario di un utente Web?

Qual è il modo migliore per farlo? php o javascript. Qualcuno mi fornisce alcuni frammenti? Grazie.

Questo ti porterà il fuso orario come variabile PHP. Ho scritto una funzione usando jQuery e PHP. Questo è testato, e funziona!

Nella pagina PHP in cui si desidera avere il fuso orario come variabile, avere questo frammento di codice da qualche parte vicino alla parte superiore della pagina:

 

Questo leggerà la variabile di sessione “tempo”, che ora stiamo per creare.

Nella stessa pagina, nella sezione , prima di tutto devi includere jQuery:

  

Inoltre, nella sezione , incolla questa jQuery:

  

Potresti averlo notato o meno, ma devi modificare l’URL nel tuo dominio attuale.

Un’ultima cosa. Probabilmente ti starai chiedendo cosa diavolo è il timezone.php. Bene, è semplicemente questo: (crea un nuovo file chiamato timezone.php e puntalo con l’url sopra)

  

Se funziona correttamente, prima caricherà la pagina, eseguirà il JavaScript e ricaricherà la pagina. Sarai quindi in grado di leggere la variabile $ timezone e usarla a tuo piacimento! Restituisce l’attuale fuso orario UTC / GMT (GMT -7) o qualsiasi fuso orario in cui ti trovi.

Puoi leggere di più su questo sul mio blog

Saluti

Sul lato server non sarà così preciso come con JavaScript. Nel frattempo, a volte è necessario per risolvere tale compito. Solo per condividere la ansible soluzione in questo caso scrivo questa risposta.

Se è necessario determinare il fuso orario dell’utente, è ansible farlo tramite i servizi Geo-IP. Alcuni di loro forniscono il fuso orario. Ad esempio, questo ( http://smart-ip.net/geoip-api ) potrebbe aiutare:

  

Proprio come ha risposto Oded. È necessario disporre di questo tipo di funzionalità di rilevamento in javascript.

Ho lottato con questo me stesso e ho capito che l’offset non è sufficiente. Ad esempio, non ti fornisce alcuna informazione sull’ora legale. Ho finito per scrivere un codice per mappare le chiavi del database Zoneinfo.

Controllando più date in un anno è ansible determinare con maggiore precisione un fuso orario.

Prova lo script qui: http://jsfiddle.net/pellepim/CsNcf/

Basta modificare il fuso orario del sistema e fare clic su Esegui per testarlo. Se si sta eseguendo Chrome, è necessario eseguire ogni test in una nuova scheda (e la sicurezza deve essere riavviata per raccogliere le modifiche del fuso orario).

Se vuoi maggiori dettagli sul codice consulta: https://bitbucket.org/pellepim/jstimezonedetect/