Pygma: Datum darstellen.

Hallo allerseits,
ich lese per XML ein Datum in ein PHP Script.
Das Datum sieht dann so aus: 2008-09-21T04:18:20-05:00
Wie kann ich das nun Formatieren?

Grüsse

  1. Hello,

    ich lese per XML ein Datum in ein PHP Script.
    Das Datum sieht dann so aus: 2008-09-21T04:18:20-05:00
    Wie kann ich das nun Formatieren?

    Es ist doch formatiert.
    An welcher Stelle möchtest Du das Format ändern? In der XML-Abfrage oder erst im PHP-Script?

    Im PHP-Script würde ich mir eine eigene Funktion bauen, die mittels substr() arbeitet und den String in der gewünschten Form wieder zusammensetzt. Diese naive Lösung dürfte hier am schnellsten arbeiten.

    Liebe Grüße aus Syburg bei Dortmund

    Tom vom Berg

    --
    Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    1. Hallo an alle,
      danke für die Antworten.

      Ja ich bekomme die XML als String übergeben und parse sie in PHP.
      Mit dem Datum können meine User nicht viel Anfangen, würde es gerne an Zeitzone anpassen und ungefähr so TT/MM/JJJJ, HH:MM darstellen.

      Danke für die Tipps, werds mal versuchen es mit php neu zusammenzusetzen.

      Grüsse

  2. Liebe(r) Pygma,

    ich lese per XML ein Datum in ein PHP Script.

    in einen String oder was?

    Das Datum sieht dann so aus: 2008-09-21T04:18:20-05:00

    Wenn es als String abgelegt ist?

    Wie kann ich das nun Formatieren?

    Ich habe das noch nie verwendet, aber strtotime() kann Datumsangaben in einen UNIX Timestamp umwandeln. Und genau das solltest Du intern machen: Einen Timestamp benutzen. Anschließend kannst Du mit den vielen passenden Datums-Funktionen von PHP aus einem Timestamp wieder ein beliebig aussehendes Datum ausgeben.

    Liebe Grüße,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
  3. Guten Tag,

    Das Datum sieht dann so aus: 2008-09-21T04:18:20-05:00

    Dies ist fast ein ISO-8601-formatiertes Datum: Im Offset der Zeitzone dürften sich eigentlich kein Minutentrenner (:) befinden.

    Wie kann ich das nun Formatieren?

    Es ist schon formatiert. Wenn du es reformatieren willst, musst du erst in seine Bestandteile zerlegen und dann neu formatiert ausgeben.

    Wenn du auf die Informationen der Zeitzone verzichten kannst, kannst du mit PHP bequem arbeiten. Siehe dazu strptime(), strftime() und mktime().

    Tipp zu strftime: Obwohl es nicht im Manual steht, unterstützt strftime() auch "%F" (das ISO-8601-Datumsformat).

    Gruß
    Christoph Jeschke

    --
    Zend Certified Engineer
    1. Hallo Ingrid,

      Dies ist fast ein ISO-8601-formatiertes Datum: Im Offset der Zeitzone
      dürften sich eigentlich kein Minutentrenner (:) befinden.

      Da hab ich noch mal nachgeschlagen: Es ist ein ISO-8601-formatiertes Datum; genauer eines im "Extended format" wie in Sektion 5.4.1 ISO8601 angegeben.

      strftime unterstützt hier aber nur das "Basic format" ohne Trenner.

      Mea culpa.

      Gruß
      Christoph Jeschke

      --
      Zend Certified Engineer
  4. Hallo allerseits,
    ich lese per XML ein Datum in ein PHP Script.
    Das Datum sieht dann so aus: 2008-09-21T04:18:20-05:00
    Wie kann ich das nun Formatieren?

    Grüsse

    es soll dann so aussehen: 21.09.2008, 23:18