Ankündigung

Einklappen
Keine Ankündigung bisher.

Bestes Datumsformat für Zeitrahmenabfrage?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Bestes Datumsformat für Zeitrahmenabfrage?

    Hallo liebe Forengemeinde!

    Meine Teichsteuerung liefert mir ein Datalog, welches ich dann in ein Array einlese. Zur Abfrage bestimmter Zeitintervalle (Spülungen pro Stunde innerhalb 24 Stunden, pro Woche und pro Monat) frage ich mich nun ob ich das Datum und die Uhrzeit in den timestamp umwandeln soll. Denn das Problem das ich habe ist, dass die Minuten und Sekunden der Uhrzeit OHNE führende Nullen angegeben sind (siehe Anhang). Ansonsten liegt es im Format "n/j/Y G??"

    Was wäre das sinnvollste? Umwandeln in einen timestamp? Oder was meint ihr?
    Angehängte Dateien
    mfg Alex


  • #2
    Timestamp oder DateTime-Instanzen.

    Kommentar


    • #3
      Klar DateTime!
      date_create_from_format kann ja schon viel erschlagen. Es fehlen leider nur die Formatangaben für Minuten/Sekunden ohne Vornullen.
      Als Workaround kann ich das anbieten:
      PHP-Code:
      $dateStr '9/30/14 0:7:19';

      $dateStr preg_replace('~:(\d)(?=:|$)~',':0$1',$dateStr);  //setzt fehlende 0 bei Bedarf zu  
      $date date_create_from_format('n/j/y G:i:s',$dateStr); 

      LG jspit
      PHP-Klassen auf github

      Kommentar


      • #4
        Warum Workaround, DateTime kann damit doch um:
        PHP-Code:
        $sDateTimeSource '9/30/14 0:7:19';
        $oDateTimeObject = new DateTime$sDateTimeSource );

        echo 
        $oDateTimeObject->format'd.m.Y H:i:s' ); 
        Code:
        30.09.2014 00:07:19
        Competence-Center -> Enjoy the Informatrix
        PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

        Kommentar


        • #5
          Ich war mir da nicht so sicher, ob auch Strings wie '7/8/9' immer richtig interpretiert werden.
          PHP-Klassen auf github

          Kommentar


          • #6
            Zitat von jspit Beitrag anzeigen
            Ich war mir da nicht so sicher, ob auch Strings wie '7/8/9' immer richtig interpretiert werden.
            ja, als 8 Juli 2009
            [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

            Kommentar


            • #7
              Vielen Dank für eure Antworten. Ich habe das ganze gestern mal mittels einer massiven explode()-Orgie gelöst und die Daten in einen Timestamp umgewandelt.
              mfg Alex

              Kommentar


              • #8
                Ich habe das ganze gestern mal mittels einer massiven explode()-Orgie gelöst und die Daten in einen Timestamp umgewandelt.
                Du blinkst auch links, wenn Du rechts abbiegen willst, oder?
                Competence-Center -> Enjoy the Informatrix
                PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                Kommentar


                • #9
                  Zitat von Arne Drews Beitrag anzeigen
                  Du blinkst auch links, wenn Du rechts abbiegen willst, oder?
                  Ne, er blinkt nur an der Seite wo grad Hunde laufen. Würstchen-Blinker.
                  [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

                  Kommentar


                  • #10
                    Nein, ich halte meine Hand links raus und deute über das Dach nach rechts. Denn das Resultat ist ja korrekt! :P
                    mfg Alex

                    Kommentar


                    • #11
                      Nun mal Spass beiseite. Warum macht du einen Handstand wenn hier im Thread auch noch meine leichten Bedenken weggefegt wurden und durch den Vorschlag von Arne das Problem zum Einzeiler schrumpft?
                      PHP-Klassen auf github

                      Kommentar


                      • #12
                        ?!?!?! Ich mache einen Handstand? Keine Ahnung was das bedeuten soll, jedoch habe ich doch schon lange geschrieben dass ich mich für den Vorschlag recht herzlich bedanke, ihn auch das nächste Mal sicher anwenden werde, zwischenzeitlich das "Problem" einfach mit einem Workaround gelöst habe?! Auch das Format "timestamp" habe ich angewendet...

                        DANKE NOCHMAL!
                        mfg Alex

                        Kommentar


                        • #13
                          timestamp ist kein spezifisches format, eher eine Gruppierung von Formaten.

                          Das was da hast ist eine abgewandelte ( denormalisierte ? ) Form des (My)SQL Date Time Timestamps.
                          Reguläre (Unix-)Timestamps sind die Summe der Sekunden die seit dem 01.01.1970 00:00:00 UTC vergangen sind.
                          [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

                          Kommentar

                          Lädt...
                          X