Laravel:如何在日期中增加天数?

时间:2018-12-06 20:03:08

标签: php laravel date controller

我有一个表单,我在其中插入start_date字段(日期格式),我想在存储之前通过控制器自动分配end_date(+180天)。

我的商店控制器非常简单:

public function show($id)
{
    $ticket = Ticket::find($id);
    return view('tickets.show', compact('ticket'));
}

等于我的更新控制器:

public function update(Request $request, $id)
{
    $ticket = Ticket::find($id);
    $ticket->fill($request->all())->save();
    return redirect()->route('tickets.show', $ticket->id)->with('info', 'Datos actualizados con éxito');
}

你有什么主意吗?

2 个答案:

答案 0 :(得分:2)

在初始化Ticket对象之后,请输入以下行:

$ticket->end_date = $request->input('start_date')->addDays($numDays);

edit-01:

在您的模型中:定义以下代码。

protected $dates = ['created_at', 'updated_at', 'start_date'];

答案 1 :(得分:1)

首先convert your string to DateTime,然后

$date->add(new \DateInterval('P180D'));