Fejl i PHP -programmer som følge af forkerte datoer kan være dyrt. Ifølge International Data Corp , brugte virksomheder mere end 20 milliarder dollars om fastsættelse dato håndtering til edb-programmer i forventning om Y2K overgang. Forkerte datoer kan forårsage PHP programmer til at gå ned eller lave forkerte beregninger , som undertiden værre end program går ned . Der findes flere metoder , som du kan bruge til at konvertere en forkert formateret dato til en korrekt formateret dato i en PHP script. Instruktioner
1
Identificer formatet af forkerte dato. Indsæt debugging kode i dit script til at udlæse indholdet af feltet med det forkerte tidspunkt. Forstå, hvorfor formatet er forkert , så du kan konvertere den til en korrekt dato og tage skridt til at forhindre lignende fejl i fremtiden. For eksempel , skal du indsætte følgende kode i dit PHP script , hvor den forkerte dato felt er refereres : Hej
echo " *** debug : date = $ date_field *** "
2
fastsætte datoer repræsenteret ved et heltal værdi som det antal sekunder siden 1. januar Perioden 1970 - for eksempel stammer fra en Microsoft Access-database. Brug PHP "date "-funktionen til at konvertere heltal til en dato værdi, der kan behandles af PHP script. For eksempel , skal du indsætte følgende script i dit program til at konvertere et heltal dato til en " MM /DD /YYYY " date værdi : Hej
$ good_date = dato ( "m /d /Y" , $ access_date )
3
bruger PHP-funktionen " strtotime " i forbindelse med den PHP "date "-funktionen til at konvertere en forkert dato format til en korrekt formateret dato. Pass den forkerte dato til den strtotime funktion for at oprette en tidsværdi , dernæst bruge " date "-funktionen til korrekt formatere tidsværdi. Skriv f.eks : Hej
$ fixed_time = strtotime ( $ bad_date ) $ new_date = dato ( " Ym - d " , $ fixed_time )
4
Brug substring funktionen at omrokere en måned og dele af et datostreng , når de er gennemført . For eksempel for at konvertere " 14/10/2011 " til " 10/14/2011 " bruge følgende kode : Hej
$ new_date = substr ( $ bad_date , 3,2 ) . '/' . substr ( $ bad_date , 0,2 ) . '/' . substr ( $ bad_date , 6),