Come gestire le date in timestamp con php e mysql
Posted by Dibi Store Fri, 31 Aug 2007 09:35:00 GMT
Talvolta ci troviamo davanti a valori nel database che potrebbero lasciarvi spiazzati. Uno di questi sicuramente è il timestamp, ossia un valore, come ad esempio "1188235277" che indica nient'altro che il numero di secondi trascorsi dal primo gennaio 1970.
Ovviamente noi dobbiamo, o dovremmo sapere come gestire questo tipo di valore, estrarlo e poi salvarlo nel database.
Per gli esempi ho utilizzato un linguaggio lato server, PHP e un database, mysql.
Iniziamo con l'ipotesi di aver già un valore nel database in formato timestamp
.Tralascio la parte del recupero del valore dal database, che esula dagli scopi di questo articolo. Ipotizzando di aver impostato in una variabile "$time" il valore "1188235277", possiamo ottenere il rispettivo valore con questo semplice codice:
$time = "1188235277";
echo date("d/m/Y", $time);
Questo codice, stamperà a video il valore "27/08/2007". Non male eh? I numeri d/m/Y indicano il formato della data, li ho racchiusi tra virgolette in modo da poter inserire un separatore. Alla fine dell'articolo vi darò un link in qui troverete tutti i possibili valori.
Ora assumiamo che abbiamo ricavato il valore, lo abbiamo modificato tramite un form, e lo dobbiamo salvare nel database, ovviamente come valore timestamp. Ecco come fare:
$date = explode('/',$date);
$date = $date[1] . '/' . $date[0] . '/' . $date[2];
$date = strtotime($date);
Dapprima convertiamo la data in un formato piu standard (mese/giorno/anno) con la funzione explode, dopodiche la convertiamo nel valore timestamp grazie alla funzione strtotime.
Ovviamente potete visualizzare a video la data nel formato che preferite, usando tutti i possibili valori per le date. Sta a voi poi convertirli con "strtotime."

