Laravel 5.1格式化日期在放入控制器内的数组之前

时间:2016-01-30 13:34:25

标签: php date laravel controller laravel-5.1

我的控制器中有以下代码:

$gecko_id = Gecko::where(compact('user_id', 'name'))->first()->id; 
$weight = Weight::where(compact('user_id', 'gecko_id'))->orderBy('weighed_date', 'desc')->take(7)->get()->reverse();
$gecko = Gecko::where(compact('user_id', 'name'))->first();

return view('gecko.show')
    ->with('gecko', $gecko)
    ->with('dates', $weight->lists('weighed_date'))
    ->with('amounts', $weight->lists('gecko_weight'));

将数据发送到我的视图以查看我正在绘制的图表。我的dates列表正在输出以下数据格式:

["2015-06-01","2015-05-01","2015-04-01","2015-03-01","2015-02-01","2015-01-01"]

理想情况下,我希望在将其传递给视图之前对其进行格式化,以使其更具可读性。所以说2015-06-01将被重新格式化为01/06/2016 - 我知道如何以通常的PHP方式执行此操作,但因为我将数据放入数组中,所以我不确定在实现我的目标的最佳方式。

1 个答案:

答案 0 :(得分:2)

您可以通过在模型中编写存取器来存档。 Accessors & Mutators

例如:

class Weight extends Model{
    ...
    public function getWeighedDateAttribute($value){
        return Carbon\Carbon::parse($value)->format('d/m/y');
    }
    ...
}