Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Web Development
You last visited: Today at 06:48

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



DateInterval Objekt aus String generieren?

Discussion on DateInterval Objekt aus String generieren? within the Web Development forum part of the Coders Den category.

Reply
 
Old   #1
 
Reav0r's Avatar
 
elite*gold: 0
Join Date: Sep 2014
Posts: 150
Received Thanks: 32
DateInterval Objekt aus String generieren?

Hi leute,

hab gerade ein kleines Problem, und zwar hab ich das Problem, das ich in einer Tabelle einen haufen von mehreren Zeitwerten habe, also eine Column mit MySQL TIME Values.

Diese hab ich aus 2 zwei Datetime Objekten mit hilfe der DateTime::diff Funktion errechnet und im Format hh:mm:ss in die TIME Felder gespeichert. So jetzt will ich aber aus einigen dieser Felder eine Summe der gesamten Stunden/Minuten/Sekunden errechnen. Dachte waere am einfachsten wenn ich diese wieder in DateInterval Objekte wandle und diese dann addiere, allerdings klappt das nicht so ganz :P

Hat da jemand eine Idee / besseren Lösungsweg? Nutze PHP 5.6 und Laravel Framework
Bin aber noch ziemlicher anfänger sowohl in PHP als auch laravel. Daher fehlt mir hier noch ein wenig der überblick und ich steh vielleicht einfach nur auf dem schlauch :P

Hoffe mir kann jemand helfen.

Gruß
Reav0r is offline  
Old 03/10/2015, 00:15   #2

 
Adroxxx's Avatar
 
elite*gold: 15
Join Date: Nov 2005
Posts: 13,021
Received Thanks: 5,323
Ist irgendwie schwer zu verstehen was du machen willst, ohne zu Wissen was das genaue Ziel ist.

Aber wenn du eh Laravel benutzt, schau dir doch mal Carbon an.
Adroxxx is offline  
Old 03/10/2015, 15:16   #3
 
Reav0r's Avatar
 
elite*gold: 0
Join Date: Sep 2014
Posts: 150
Received Thanks: 32
Danke für den Tipp, werde ich mir mal anschauen.

Nun also machen möchte ich folgendes:

Ich möchte von mehreren "Zeitaufzeichnungen" die Dauer dieser Aufzeichnungen zusammen rechnen. Ich dachte am einfachsten wäre das wenn ich beim Abspeichern des Endzeitpunktes direkt die Dauer ausrechne und diese als Time Value in der mysql Datenbank speichere. Die Idee war, das ich diese dann nur zusammen adieren müsste. Das Ergebnis sollte dann auf einer Übersichtsseite ausgegeben werden.

Beispiel:

Aufnahme 1:
Start: 1.1.15 13:00:00 Ende: 1.1.15 14:00:00 Dauer 01:00:00
Aufnahme 2:
Start: 1.1.15 15:00:00 Ende: 1.1.15 18:00:00 Dauer 03:00:00

Die Dauer von den Aufnahmen soll nun addiert werden. also 04:00:00 sollte das Ergebnis sein.

Versucht hatte ich dies mit DateInterval Objekten. Aber da ich von laravel nur "01:00:00" und "03:00:00" als Werte zurück bekomme, konnte ich daraus keine erstellen.
Da dies mein erstes größeres Projekt sowohl mit PHP als auch mit laravel ist, stehe ich da gerade ein wenig auf dem Schlauch wie ich das jetzt lösen könnte.
Reav0r is offline  
Old 03/10/2015, 19:19   #4

 
Adroxxx's Avatar
 
elite*gold: 15
Join Date: Nov 2005
Posts: 13,021
Received Thanks: 5,323
Ja, schau dir am besten Carbon mal genauer an.
Du könntest beim Start einfach Carbon::now() aufrufen und beim Ende auch.
Und dann schauen welche Methoden Carbon noch hat und daraus dann das Endergebnis zu generieren.

Du hast halt schöne saubere Objekte bei Carbon und kannst auf die einzelnen Bestandteile zugreifen.

Ansonsten kannst du auch eine eigene Methode schreiben die das ausrechnet bzw. Carbon erweitert.
Adroxxx is offline  
Thanks
1 User
Old 03/10/2015, 22:29   #5
 
Reav0r's Avatar
 
elite*gold: 0
Join Date: Sep 2014
Posts: 150
Received Thanks: 32
Ok danke, werde die ganze Geschichte am Wochenende eh noch mal neu schreiben da ich schlauer weise als ich angefangen hatte auf laravel 4.2 gesetzt hatte...
Da kann ich das direkt mal (hoffentlich) sauberer mit Carbon implementieren
Reav0r is offline  
Old 03/11/2015, 17:52   #6

 
Adroxxx's Avatar
 
elite*gold: 15
Join Date: Nov 2005
Posts: 13,021
Received Thanks: 5,323
L5 ist ja auch erst seit kurzem offiziell Released.
Wenn du eh noch nicht so extrem weit bist, würde ich es definitiv auf L5 umschreiben.
L5 ist einfach viel besser
Adroxxx is offline  
Old 03/11/2015, 21:42   #7


 
Cholik's Avatar
 
elite*gold: 4
Join Date: Aug 2008
Posts: 6,786
Received Thanks: 4,992
PHP Code:
<?php

$val1 
'10:34:09';
$val2 '12:55:00';

$datetime1 = new DateTime($val1);
$datetime2 = new DateTime($val2);

echo 
$datetime1->diff($datetime2)->format('%H:%I:%S');
Ausgabe: 02:20:51




Alternativ in mysql:
Code:
SELECT TIMEDIFF('12:55:00', '10:34:09');
Cholik is offline  
Reply


Similar Threads Similar Threads
String Between | String regexp
06/07/2013 - AutoIt - 7 Replies
Huhu, undzwar habe ich ein problem hiermit: <li class="lab">Benutzername:</li> <li>Salmor</li> ich will salmor auslesen, wenn ich allerdings sage: $Benutzername = _StringBetween($sHTML, 'Benutzername:</li><li>', '</li>') kommt es zu keiner Lösung, evtl kann mir jemand helfen.
[Visual Basic] [Problem] String auslesen/String zufällig wählen
05/06/2012 - General Coding - 4 Replies
Code: #include <GUIConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Name Generator", 236, 299, 815, 246) $Input1 = GUICtrlCreateInput("Username", 24, 72, 185, 21) $Input2 = GUICtrlCreateInput("Username", 24, 104, 185, 21) $Input3 = GUICtrlCreateInput("Username", 24, 136, 185, 21) $Input4 = GUICtrlCreateInput("Username", 24, 168, 185, 21) $Input5 = GUICtrlCreateInput("Username", 24, 200, 185, 21)
[VB08]String in String mit mehreren Funden
08/08/2011 - .NET Languages - 6 Replies
Hey, bin gerade auf ein Problem gestoßen, an dem ich mir seit 3 Stunden die Zähne ausbeiße. Ich will eine Funktion schreiben, die der _StringBetween Funktion von AutoIt gleich ist. _StringBetween gibt in einem Array alle Strings zwischen zwei SubStrings und dem ganzen String aus. Die Ausgabe bei _StringBetween("<h1>test1</h1>&l t;h1>test2</h1>", "<h1>", "</h1>") wäre also idealer Weiße ein Array (x = "test1", x = "test2")... da man in VB08 kein Array returnen kann, komme ich aber einfach...
[C++] string zwischen string
11/11/2010 - C/C++ - 6 Replies
tag gibts direkt ne funktion, mit der man einen passenden string zwischen dem string suchen kann? also meine net .find() sondern sowas ähnliches, die in diesem beispiel "mein string sucht" Bsp: "<span id=\"lalala\">"+string mein_string+"</span>" understanden? :-)



All times are GMT +2. The time now is 06:48.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.