2017-08-24 2 views
1

Ich muss den Unterschied zwischen den beiden Daten finden. Sag ich habe 2017-02-01 - 2017-01-01. Die Anzahl der Tage zwischen den beiden Tagen ist die AusgabeLaravel Carbon Datum DiffInDays() auf Zeichenfolge Fehler

$formatted_dt1=Carbon::parse($a->date)->format('Y-m-d'); 
$formatted_dt2=Carbon::parse($c->dt)->format('Y-m-d'); 
$date_diff=$formatted_dt1->diffInDays($formatted_dt2); 

Wenn ich den obigen Code geben erhalte ich den Fehler als

FatalThrowableError in ReportsController.php line 67: 
Call to a member function diffInDays() on string 

Antwort

1

Carbon-format() Funktion String konvertiert so format('Y-m-d') wie folgt entfernen:

$formatted_dt1=Carbon::parse($a->date); 

$formatted_dt2=Carbon::parse($c->dt); 

$date_diff=$formatted_dt1->diffInDays($formatted_dt2); 

Ich hoffe, Sie verstehen. Sie können Dokumente anzeigen here.

2

Nicht getestet, aber versuchen Sie dies:

$formatted_dt1=Carbon::parse($a->date); 
$formatted_dt2=Carbon::parse($c->dt); 
$date_diff=$formatted_dt1->diffInDays($formatted_dt2); 
1

Sie können auf diese Weise tun,

$formatted_dt1=Carbon::parse($a->date); 
$formatted_dt2=Carbon::parse($c->dt); 
$date_diff=$formatted_dt1->diffInDays($formatted_dt2)->format('Y-m-d'); 

zuerst die Differenz von zwei Daten erhalten und dann das Datumsformat.

0

Sie können die Funktion diffInDays() für eine Carbon-Instanz nur verwenden, wenn das Format vor dem Datum gilt.

$formatted_dt1=Carbon::parse($a->date); 
$formatted_dt2=Carbon::parse($c->dt); 

Jetzt sollten Sie in der Lage sein zu vergleichen:

$date_diff=$formatted_dt1->diffInDays($formatted_dt2); 

wenn Sie Datumsformat anwenden möchten, versuchen Sie unten für sie vergleichen:

$date_diff=$formatted_dt1->diffInDays($formatted_dt2)->format('Y-m-d'); 

prüfen diese document für weitere Details.

Verwandte Themen