在laravel 5.5中调用字符串上的成员函数format()

时间:2018-01-05 09:36:55

标签: php mysql datetime-format laravel-eloquent

我正在努力获得特定用户的总出勤时间。在方法中,我得到了总结果但是,现在问题是格式化持续时间。我这样想,但是像上面那样得到错误。请有人帮助我 - 这是方法 -

public function index(Request $request)
{
  $id = Auth::id();
  $total_duration = DB::table('attendances')
                    ->select('duration')
                    ->where('teacher_id', '=', $id)
                    ->sum('duration');
  return view('teachers.attendance.index', compact('teacher', 'attendances', 'att_id', 'total_duration'));
 }

在我的index.blade.php中是 -

<tr>
  <td colspan="4">Total</td>
  <td>
       {{ $total_duration->format('H:i:s') }}
  </td>
</tr>

enter image description here

1 个答案:

答案 0 :(得分:1)

您的$ total_duration会返回一个字符串,因此您无法调用该函数。如果要更改日期字符串的格式。你可以试试。

更新:完整代码为:

$total_duration = DB::table('attendances')->selectRaw('SEC_TO_TIME( SUM( 
TIME_TO_SEC( `duration` ) ) ) as total')->first(); 

和$ total_duraion-&gt; total将是您需要的值