====== convertDateTime() ======
''mixed **convertDateTime**(mixed //Zeitangabe//, [string //FormatZeitangabe//], [string //FormatAusgabe//])''
Die Funktion ''convertDateTime()'' konvertiert eine Zeitangabe oder einen Zeitstempel in eine andere Zeitangabe oder einen Zeitstempel.
* //Zeitangabe//\\ Ein Unix-Zeitstempel (z.B. ''1418045461'') oder ein String, der ein Datum und/oder eine Uhrzeit beschreibt (z.B. '''8.12.2014 14:31''').
* //FormatZeitangabe// (optional)
* Keine Angabe bzw. ''null'' -- Automatische Interpretation der //Zeitangabe//, sofern diese üblichen Zeit-Datums-Schreibweisen folgt, z.B. "1.4.", "4/1/2014", "16:30", "1.4.2014 16:30".
* Eine Format-Definition entsprechend der PHP-Methode ''[[http://php.net/manual/de/datetime.createfromformat.php|DateTime::createFromFormat()]]'' (z.B. '''d.m.Y H:i''').
* //FormatAusgabe// (optional)
* Keine Angabe bzw. ''null'' -- Es wird ein Unix-Zeitstempel zurückgegeben.
* Eine Format-Definition entsprechend der PHP-Funktion ''[[http://php.net/manual/de/function.date.php|date()]]'' (z.B. '''d.m.Y H:i''').
===== Beispiel =====
Der Befragte wurde in der offenen Texteingabe "AB01_01" um eine Datums- und Zeitangabe gebeten, wann er zuletzt ferngesehen hat. Diese Angabe sollte nach der Vorgabe "Stunde:Minute" (für den aktuellen Tag) oder "Tag.Monat Stunde:Minute" für frühere Tage erfolgen.
Der folgende PHP-Code wird auf der Seite nach Frage "AB01" ganz oben platziert. Falls die Eingabe nicht als gültige Datums-Zeit-Angabe interpretiert werden konnte, wird der Textbaustein "datum-fehler" angezeigt und die Frage mittels ''[[:de:create:functions:repeatpage|repeatPage()]]'' erneut angezeigt.
if (convertDateTime(value('AB01_01')) == false) {
text('datum-fehler');
repeatPage();
}
Weiter hinten im Fragebogen soll dieses Datum nun im standardisierten Format "Tag.Monat.Jahr Stunde:Minute" angezeigt werden. Für die Anzeige wird in einer Frage der Platzhalter %datum% verwendet. Der folgende PHP-Code wird über der Frage (oder auch schon weiter vorne) platziert.
$eingabe = value('AB01_01');
$ausgabe = convertDateTime($eingabe, null, 'd.m.Y H:i');
replace('%datum%', $ausgabe);