Errori in programmi PHP causati da date errate possono essere costosi. Secondo International Data Corp. , le aziende hanno speso più di $ 20 miliardi fixing gestione per i programmi informatici in previsione del passaggio Y2K . Date errate possono causare il crash di programmi PHP o fare calcoli non corretti , che sono a volte peggio di crash del programma . Sono disponibili diversi metodi che è possibile utilizzare per convertire una data non correttamente formattato per una data correttamente formattato in uno script PHP . Istruzioni
1
identificare il formato della data non corretta . Inserire il codice di debug dello script per l'output il contenuto del campo con la data corretta. Capire perché il formato non è corretto in modo da poter convertire in una data corretta e adottare misure per evitare errori simili in futuro . Ad esempio , inserire il seguente codice nel tuo script PHP dove il campo data errata viene fatto riferimento :
echo " *** debug: data = $ date_field ***" ;
2
Identificazione delle date rappresentate da un valore intero come il numero di secondi dal 1 ° gennaio 1970 - per esempio, le date da un database di Microsoft Access . Utilizzare la funzione PHP " data" per convertire i valori interi di un valore di data che può essere elaborato dallo script PHP . Ad esempio , inserire il seguente script nel tuo programma per convertire una data di numero intero per un valore di data " MM /DD /YYYY " :
$ good_date = date ( "m /d /Y " , $ access_date ) ;
3
Utilizzare la funzione PHP " strtotime " in combinazione con la funzione PHP " data " per convertire un formato di data non corretto per una data formattata correttamente . Passare la data corretta per la funzione strtotime per creare un valore di tempo , quindi , utilizzare la funzione " data" per formattare correttamente il valore del tempo . Ad esempio, digitare :
$ fixed_time = strtotime ( $ bad_date ) ; $ new_date = date ( " Ym - d" , $ fixed_time ) ;
4
Utilizzare la funzione substring per riordinare il mese e il giorno porzioni di una stringa data in cui sono recepite . Ad esempio, per convertire " 14/10/2011 " al " 10/14/2011 ", utilizzare il codice seguente :
$ new_date = substr ( $ bad_date , 3,2 ) . '/' . substr ( $ bad_date , 0,2 ) . '/' . substr ( $ bad_date , 6) ;