2016-12-18 20 views
1

Ich möchte die Zeitdifferenz berechnen und in die Datenbank einfügen ... mein Modellname ist "Buchung" und die Startzeit und Endzeit werden von den Benutzern..and total_duration eingegeben wird von diesen zwei berechnet und wird in Datenbank eingefügt ... ich benutze diese Codes ... aber funktioniert nicht. Das ist mein Controller.Zeitberechnung in Laravel unter Eingabe von Benutzer

<?php 
/*namespace App\booking;*/ 
use Carbon\Carbon; 
namespace App\Http\Controllers; 
use App\booking; 
use Illuminate\Http\Request; 
use Illuminate\Database\Eloquent\Model; 

    class RoombookController extends Controller 
    { 
    public function showreport(Request $request) 
    { 
    /* dd($request->all()); 
    */ $time= Carbon.now(); 
     $booking = new booking; 
     $booking->bookdate = $request->input('bookdate'); 
     $booking->roomname = $request->input('roomname'); 
     //echo $datefrom; 
     $booking->starttime =$startTime= $request->input('starttime'); 
     $booking->endtime = $finishTime=$request->input('endtime'); 
     $booking->purpose = $request->input('Purpose'); 


    //echo $dateto; 
    $time->sTime = Carbon::parse($startTime); 
    $time->fTime = Carbon::parse($finishTime); 
    $time->total_time = $fTime->diffForHumans($sTime);  
    $booking->total_duration = $time->total_time; 

    $booking->save(); 

    } 

}

Antwort

1

Kohle für die Berechnung der Ausführungszeit ist nicht sehr gute Idee. Verwenden Sie einfach plain old microtime():

$start = microtime(true); 
.... // Do something here. 
$end = microtime(true); 
$time = $end - $start; 
+1

thnx ,, es funktionierte total: D – incorporeal

1

Ich denke, man sollte zuerst in Sekunden

$totalDuration = $finishTime->diffInSeconds($startTime); 

und dann wünschenswert Format

gmdate('H:i:s', $totalDuration); 

oder versuchen Sie dies, wenn diese Arbeit für Sie

konvertieren
$finishTime->diff($startTime)->format('%H:%i:%s'); 
+0

es zeigt Kohlenstoff nicht gefunden..ich versuchte beide Namespace Carbon; und verwenden Sie Carbon/Carbon – incorporeal

+0

versuchen Sie dies - Verwenden Sie \ Carbon \ Carbon Verwendung der \ am Anfang bezieht sich auf eine Art von globalen Namespace. –