Hoe kan ik een onjuiste PHP datum omzetten

Hoe kan ik een onjuiste PHP datum omzetten


Fouten in PHP-programma's als gevolg van onjuiste data kan kostbaar zijn. Volgens de International Data Corp., het bedrijfsleven al meer dan $ 20000000000 fixingdatum handling in computerprogramma's in afwachting van de Y2K overgang. Onjuiste data kan leiden tot PHP-programma's laten crashen of om onjuiste berekeningen, die soms erger dan het programma crasht. Er zijn verschillende methoden beschikbaar die u kunt gebruiken om een ​​onjuist opgemaakte datum om te zetten in een goed geformatteerde datum in een PHP-script.

instructies

1 Identificeer het formaat van de onjuiste datum. Plaats debugging code in je script om de output van de inhoud van het veld met de verkeerde datum. Begrijpen waarom de indeling onjuist is, zodat u kunt converteren naar een juiste datum en stappen ondernemen om soortgelijke fouten in de toekomst te voorkomen. Zo plaatst u de volgende code in je PHP-script waar de verkeerde datum veld wordt verwezen:

echo

"debug: date = $ date_field";

2 Identificeer data vertegenwoordigd door een integer waarde als het aantal seconden sinds 1 januari 1970 - bijvoorbeeld, dateert uit een Microsoft Access-database. Gebruik de "date" functie PHP om integer waarden te converteren naar een datum waarde die door de PHP-script kan worden verwerkt. Zo plaatst u de volgende script in uw programma om een ​​integer datum converteren naar een "DD / MM / YYYY" date value:

$ Good_date = date ( "m / d / Y", $ access_date);

3 Gebruik de PHP functie "strtotime" in combinatie met de "date" functie PHP om een ​​onjuiste datum-formaat te converteren naar een correct opgemaakte datum. Passeer de onjuiste datum aan de strtotime functie om een ​​tijd waarde te creëren; dan gebruikt u de functie "date" om goed te formatteren van de tijdswaarde. Bijvoorbeeld, type:

$ Fixed_time = strtotime ($ BAD_DATE);
$ NEW_DATE = date ( "Ymd", $ fixed_time);

4 Gebruik de substring functie om de maand en dag gedeelten van een datumtekenreeks herschikken wanneer ze worden omgezet. Bijvoorbeeld, om te zetten "14/10/2011" naar "10/14/2011", gebruikt u de volgende code:

$ NEW_DATE = substr ($ BAD_DATE, 3,2). '/'. substr ($ BAD_DATE, 0,2). '/'. substr ($ BAD_DATE, 6);