theSnow: Datum von vor 20 Tagen... ;o)

Einen wunderschönen Guten Morgen an alle Forumer und Forumerinnen!

Ich bin mal wieder hier um ganz blöde Fragen zu stellen... ;o)
Würde mich mal interessieren wie nervig ich doch in wirklichkeit bin.... aber das war nicht mein Problem... ;o) (oder doch *g*)

Also: Ich brauche von PHP eine timestamp die von vor 5 Tagen ist... Das heißt also heute ist 20010703 und ich brauche halt 20010629. Gibt es dafür in PHP ne Funktion die mir das Ausrechnet? Weil -5 gibt na laut Adam Riese 20010698... nicht wirklich prikelnd...

Vielen Dank für Eure Hilfe! Ich glaube hier sollte jeder mal einen Bundes Verdienstorden bekommen... oder wie dat ding auch immer heißt... Ehrlich!

Thx!

TheSnow

  1. Hi Schneemann,

    Also: Ich brauche von PHP eine timestamp die von vor 5 Tagen ist... Das heißt also heute ist 20010703 und ich brauche halt 20010629. Gibt es dafür in PHP ne Funktion die mir das Ausrechnet? Weil -5 gibt na laut Adam Riese 20010698... nicht wirklich prikelnd...

    Da Timestamps in Sekunden angegeben werden, reicht es, auszurechnen, wie viele Sekunden ein Tag hat, das mit 5 zu multiplizieren,
    und von dem jetzigen Timestamp zu subtrahieren.

    Ganz einfach, hmm? ;-)

    HTH,
    Gero, der sich uebrigens nicht genervt fuehlt.

    1. Also: Ich brauche von PHP eine timestamp die von vor 5 Tagen ist... Das heißt also heute ist 20010703 und ich brauche halt 20010629. Gibt es dafür in PHP ne Funktion die mir das Ausrechnet? Weil -5 gibt na laut Adam Riese 20010698... nicht wirklich prikelnd...

      Da Timestamps in Sekunden angegeben werden, reicht es, auszurechnen, wie viele Sekunden ein Tag hat, das mit 5 zu multiplizieren,
      und von dem jetzigen Timestamp zu subtrahieren.

      Mein Problem ist ja nur das die Timestamp von einer anderen Datenbank kommt. Da steht aber nur <Jahr><Monat><Tag> drin... verstehst Du?

      Oder hab ich da jetzt was falsch verstanden....???

      1. Ich glaube, das sieht wirklich nach einem Datum aus...
        PHP hat eine sehr umfangreiche Datums- und Stringmanipulation.
        Vielleicht zerhackstückelst Du einfach das Datum (da sich die Zuffernfolge und Anzahl nicht so sehr bald ändern wird) und übergibst die gewonnenen Tage Monate und Jahe und machst mit mktime() ein Timestamp daraus. Mit dem Timestamp kannst Du einfach die Tage * 86400 abziehen und wieder an getdate() übergeben und bekommst ja nach formatierung Dein gewünschtes Datum.

        Auf http://www.php.net/docs.php gibt es eine herrliche Doku/Refernez...

        1. Ich glaube, das sieht wirklich nach einem Datum aus...
          PHP hat eine sehr umfangreiche Datums- und Stringmanipulation.
          Vielleicht zerhackstückelst Du einfach das Datum (da sich die Zuffernfolge und Anzahl nicht so sehr bald ändern wird) und übergibst die gewonnenen Tage Monate und Jahe und machst mit mktime() ein Timestamp daraus. Mit dem Timestamp kannst Du einfach die Tage * 86400 abziehen und wieder an getdate() übergeben und bekommst ja nach formatierung Dein gewünschtes Datum.

          Auf http://www.php.net/docs.php gibt es eine herrliche Doku/Refernez...

          Vielen Dank!

          Thx!

          Schneemann

  2. Also: Ich brauche von PHP eine timestamp die von vor 5 Tagen ist... Das heißt also heute ist 20010703 und ich brauche halt 20010629. Gibt es dafür in PHP ne Funktion die mir das Ausrechnet? Weil -5 gibt na laut Adam Riese 20010698... nicht wirklich prikelnd...

    Hallo,

    mktime ist dein freund (http://www.php.net/mktime)
    mktime hat den vorteil das es dir immer ein richtiges datum zurückliefert. Das heißt montats überläufe und so weiter abfängt.

    zb.:

    Aktuelles datum -5 tage, ausgegeben als Timestamp:
    date("U",mktime(0,0,0,date("d")-5,date("m"),date("Y")));

    Die ausgabe kannst du dir selbst so formatiern wie du sie brauchst, siehe dazu die optionen von date http://www.php.net/date

    lg
    Ludwig

    1. (BB == Blöder Bug):

      Aktuelles datum -5 tage, ausgegeben als Timestamp:

      date("U",mktime(0,0,0,date("m"),date("d")-5,date("Y")));

      lg
      Ludwig

      1. (BB == Blöder Bug):

        Aktuelles datum -5 tage, ausgegeben als Timestamp:
        date("U",mktime(0,0,0,date("m"),date("d")-5,date("Y")));

        Vielen Dank für Deine Hilfe!

        MfG

        Schneemann