kostenloser Webspace werbefrei: lima-city


PHP Datum des vorigen Tags bekommen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    marvinkleinmusic

    Kostenloser Webspace von marvinkleinmusic

    marvinkleinmusic hat kostenlosen Webspace.

    Hallo Zusammen,

    Ich suche einen Weg das tag/datum">Datum von Gestern leicht rauszubekommen.

    Zurzeit mache ich das so:
    $tag   	 = date("j");
    										$monat 	 = date("m");
    										$jahr 	 = date("Y");
    										$alter_tag = $tag - 1;
    										$datum   = $alter_tag . "." . $monat . "." . $jahr . ".";



    Allerdings funktioniert das nicht, wenn der Monat sich ändert. Wie komm ich also am 1sten an den 31/30 oder 28 ran?


    Liebe Grüße
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Da gibt es eine ganz interessante Möglichkeit in PHP:
    <?php
      $zeit=time();
      $tag=date("j",$zeit); // Tag,
      $monat=date("m",$zeit); // Monat
      $jahr=date("Y",$zeit); // und Jahr werden ermittelt
    
      $tag--; // Der Tag wird um eins reduziert
    
      $gestern=mktime(0,0,0,$monat,$tag,$jahr); // Aus diesen Informationen ein neues Datum erstellen
    
      echo date("j.m.Y",$gestern); // neues Datum formatiert ausgeben
    ?>

    Hab ich gerade getestet, es sollte funktionieren.
  4. Autor dieses Themas

    marvinkleinmusic

    Kostenloser Webspace von marvinkleinmusic

    marvinkleinmusic hat kostenlosen Webspace.

    Funktioniert Perfekt! Danke!
  5. Zur Ergänzung:
    $unixTimeStamp= time() - 86400;
    echo date("d.m.Y", $unixTimeStamp);


    Wäre auch eine einfache Möglichkeit. Damit hast du auf jeden Fall dann auch den Timestamp da, den du ohne Probleme formatieren kannst.
  6. muellerlukas schrieb:
    $unixTimeStamp= time() - 86400;
    Richtig, der Programmcode ist einfacher. Auf diese Weise könnte es aber in 2 Stunden im Jahr Probleme geben. Immer nach einer Zeitumstellung, weil der Tag dann 23 oder 25 Stunden hat.
  7. Autor dieses Themas

    marvinkleinmusic

    Kostenloser Webspace von marvinkleinmusic

    marvinkleinmusic hat kostenlosen Webspace.

    fuerderer schrieb:
    muellerlukas schrieb:
    $unixTimeStamp= time() - 86400;
    Richtig, der Programmcode ist einfacher. Auf diese Weise könnte es aber in 2 Stunden im Jahr Probleme geben. Immer nach einer Zeitumstellung, weil der Tag dann 23 oder 25 Stunden hat.


    Das stört mich ja nicht, da das nicht am letzten Tag eines Monats stattfindet und die Werte um Punkt 0 Uhr benötigt werden ;)

    LG
  8. marvinkleinmusic schrieb:
    Das stört mich ja nicht, da das nicht am letzten Tag eines Monats stattfindet und die Werte um Punkt 0 Uhr benötigt werden ;)
    Ich stehe gerade auf dem Schlauch, was das mit dem letzten Tag eines Monats zu tun hat. Aber schau dir mal dieses Beispiel an:
    <?php
      $aktuell=1396216800;
      $gestern=$aktuell-86400;
    
      echo date("j.m.Y H:i.s",$aktuell).'<br>';
      echo date("j.m.Y H:i.s",$gestern);
    ?>
    Und als Ausgabe:
    31.03.2014 00:00.00
    29.03.2014 23:00.00
    Wenn du also den 31.03.2014 als Eingangsdatum hast (Uhrzeit ist genau 0), bekommst du trotzdem den 29.03.2014 als Ergebnis. Es betrifft dich also auch bei 0 Uhr!
  9. Hallo,

    php hat dafür eine eigene Funktion strtotime. Diese solltest Du Dir mal anschauen... Nachfolgend der Code, der Dir den Timestamp für den gestrigen Tag ausgibt...
    $gestern = strtotime("-1 day"));

  10. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!