2016-12-20 5 views
0

In Laravel nehme ich an wie '10: 30: 00 'und ich teile sie durch ":" und konvertiere sie in ganze Zahlen und füge sie hinzu wie hier 10 + 30 = 40 wird die Ausgabe sein. Ich benutze 'explode', um zu teilen, aber ich weiß nicht, wie man die Werte hinzufügt.wenn jemand helfen kann bitte .... danke.hier ist mein Beispielcode, wo ich Zeit als string nehme. Das ist keine doppelte Frage, wie ich will Verwenden der Exploid-Funktion, die verwendet werden soll, und Eingabe als Zeichenfolge vom Benutzer. nicht als Zeit. Die Frage zeigt sich, dass das Duplikat meiner Frage nur die Zeit ist. :)Laravel: Wie wird die Zeit in Minuten umgewandelt?

$startTime= $request->input('starttime'); 
$finishTime=$request->input('endtime'); 
$stime = explode(':',$startTime); 
$estime = explode(':',$finishTime); 
+0

Warum möchten Sie Minuten und Stunden hinzufügen? – Tiger

+0

ich möchte wissen, wie man sie hinzufügt..ich multipliziert die Stunde mit 60 und addiert mit Minuten. Ich möchte die Ausgabe in Minuten. – incorporeal

+0

Für Laravel bevorzuge ich Carbon als @ kapil.dev antworte Ihnen. Es ist nicht gut, die Zeit zu explodieren und nur Minuten und Stunden hinzuzufügen. Secounds sind in einigen Fällen auch nützlich. – Tiger

Antwort

2

Sie array_sum($array_name);

Vor dem Ausführen array_sum verwenden können, erhalten Sie $ stime zu tun haben [0] * 60 und $ etime [0] * 60, um sie in Minuten zu konvertieren

für $stime tun $startsum = array_sum($stime);

und für $etime tun $endsum =array_sum($etime);

Hoffe das hilft Ihnen.

+0

Hat es für dich funktioniert ??? –

+0

wenn ich dies $ stime [0] * 60 und $ etime [0] * 60 dann wie übergebe ich den Wert in array_sum()? – incorporeal

+0

müssen Sie wieder in $ stiime [0] speichern = $ stime [0] * 60 und ähnlich für $ etime [0] = $ etime [0] * 60 –

2

Sie können Carbon verwenden Stunde und Minute zu extrahieren

$startTime= \Carbon::parse($request->input('starttime')); 
$stime = ($startTime->hour * 60) + $startTime->minute; 
$finishTime=\Carbon::parse($request->input('endtime')); 
$estime = ($finishTime->hour * 60) + $finishTime->minute; 

Um mehr über Carbon zu wissen verweisen: http://carbon.nesbot.com/docs/#api-interval

+0

upvote für Carbon. – Tiger

1

Hat Dir das versuchen ....

<?php 
$time='10:30:00'; 
$stime = explode(':',$time); 


$sum=0; 
foreach ($stime as $s) 
{ 
    $sum=$sum+$s; 
} 
echo $sum; 

?> 

Und wenn Sie verwenden array_sum() ... wie diese ...

$sum=array_sum($stime); 
echo $sum; 
+0

ja mit array_sum() ich habe die gewünschte Ausgabe – incorporeal

+0

ok großer Mann .... genießen –

0

Sie können auch date_parse Methode für PHP verwenden.

<?php 
$startTime= '10:30:02'; 
$finishTime= '12:30:20'; 

$parsed = date_parse($startTime); 
$startTimeSeconds = $parsed['hour'] * 3600 + $parsed['minute'] * 60 + $parsed['second']; 

$parsed = date_parse($finishTime); 
$finishTimeSeconds = $parsed['hour'] * 3600 + $parsed['minute'] * 60 + $parsed['second']; 

?> 
Verwandte Themen