Datumswert mit fn:current-date()
(Auszug aus "XSLT 2.0 & XPath 2.0" von Frank Bongers, Kapitel 3.)
Um das aktuelle Systemdatum zu erfragen, genügt der Aufruf der Funktion fn:current-date() – der Wert kann beispielsweise in eine Variable abgelegt werden und innerhalb einer Templateregel eingesetzt werden:
<xsl:variable name="heute" select="fn:current-date()"/>
Code-Beispiel: kap03/3.05/date.xsl (Auszug).
Die Funktion liefert einen Datumswert, typisiert als xs:date zurück. Als String ausgegeben, sieht der Rückgabewert (für den 1. Juli 2007) folgendermaßen aus:
2007-07-01+01:00
Hier ist in Form von +01:00 eine Zeitzonenangabe enthalten, der eigentliche Datumsstring folgt der Form YYYY-MM-DD.
Formatierung eines Datumswertes für die Ausgabe
Meist möchte man ihn jedoch nicht in dieser Form verwenden. Die XSLT-Funktion format-date() ermöglicht eine beliebige Formatierung des Datumsstrings für die Ausgabe. Um eine Ausgabe in der Form »01.07.2007« zu erhalten, übergibt man der Funktion den Datumswert und einen Formatierungsstring:
<xsl:value-of select="format-date($heute,'[D01].[M01].[Y0001]')"/>
Code-Beispiel: kap03/3.05/date.xsl (Auszug).
Hierbei wird als erster Parameter der zu formatierende Wert übergeben. Der Formatierungsstring enthält Substrings in eckigen Klammern, die Platzhalter für die zu extrahierenden Komponenten darstellen. Dazwischen stehen Zeichenliterale, die unverändert weitergegeben werden – hier sind es trennende Punkte.
<< zurück | vor >> |
Tipp der data2type-Redaktion: Zum Thema XSLT bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an: |
Copyright © Galileo Press, Bonn 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "XSLT 2.0 & XPath 2.0 ― Das umfassende Handbuch" denselben Bestimmungen wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.
Galileo Press, Rheinwerkallee 4, 53227 Bonn