在我的控制器上,我有以下代码:
public function receita(Request $request){
$id = $request['id'];
$marcacao = Marcacao::find($id);
$produtos = ProdutoUnidade::where('unidade_id', $marcacao->agenda->vinculo->unidade->id)
->get();
$vencimento = new DateTime(date("y-m-d"));
$vencimento->add(new DateInterval('P90D'));
$vencimento = $vencimento->format('y-m-d');
return view('agendas.receita', compact('marcacao', 'produtos', 'vencimento'));
}
在我的刀片中,我拥有:
@foreach($produtos as $produto)
<option value="{{$produto->id}}">
{{$vencimento->diff($produto->produtoNota->dataValidade) > 60 ? '0' : '1'}}
</option>
@endforeach
我想知道$ vencimento和$ produto-> produtoNota-> dataValidade的差是否大于60,但是我收到错误消息:
在字符串上调用成员函数diff()
有帮助吗?
答案 0 :(得分:1)
在控制器中,您将dcast(df, id ~ var, value.var ='val', fun.aggregate =function(x) paste(x[1])
的DateTime转换为字符串,然后将此变量传递给视图。
因此,您要在字符串上调用$vencimento = $vencimento->format('y-m-d');
。如果需要输出格式化的日期时间,请传递DateTime对象以在那里查看和格式化它。
P.S。我建议改用碳。