====== 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 wurd 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" (for 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 mitts ''[[:de:create:functions:repeatpage|repeatPage()]]'' erneut anegezeigt.

<code php>
if (convertDateTime(value('AB01_01')) == false) {
  text('datum-fehler');
  repeatPage();
}
</code>

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.

<code php>
$eingabe = value('AB01_01');
$ausgabe = convertDateTime($eingabe, null, 'd.m.Y H:i');
replace('%datum%', $ausgabe);
</code>