Come convertire GMT di fuso orario in PHP

January 20

Come convertire GMT di fuso orario in PHP


Giocoleria fusi orari con PHP è un problema comune. Sia che si sta sviluppando un forum, un negozio di e-commerce o un blog, è preferibile visualizzare le date per l'utente nel proprio fuso orario. Anche se è possibile creare una soluzione personalizzata elaborata per questo problema, PHP ha un paio di classi che possono semplificare notevolmente il compito. Le classi sono "DateTime" e "DateTimeZone." "DateTime" è una classe per la gestione, la formattazione e la conversione di date. "DateTimeZone" è una classe per rappresentare un fuso orario. Combinando le funzionalità delle due classi ", si può facilmente convertire una data GMT a quello di un altro fuso orario.

istruzione

1 Aprire un editor di testo, come Blocco note, e creare un nuovo file. Scrivi un segmento di codice che definisce due "DateTimeZone" oggetti: uno per il GMT e uno per il fuso orario della vostra scelta. Ecco un esempio:

$ Gmt = new DateTimeZone ( 'GMT');

$ Est = new DateTimeZone ( 'America / New_York');

2 Creare un nuovo oggetto "DateTime" con la data di convertire come primo parametro e l'oggetto GMT "DateTimeZone" come il secondo. Facoltativamente, visualizzare l'ora utilizzando la funzione "data" di PHP. Ecco un esempio:

$ DTIME = new DateTime ( '7/12/2010 11:15', $ gmt);

Data echo ( 'r', $ dtime-> getTimestamp ());

3 Convertire il "DateTime" fuso orario dell'oggetto chiamando il metodo "setTimezone" con l'oggetto "DateTimeZone" come parametro. Facoltativamente, visualizzare la data convertito. Ecco un esempio:

$ Dtime-> setTimezone ($ est);

Data echo ( 'r', $ dtime-> getTimestamp ());