Php Laravel在控制器函数中使用查询结果
这是我的控制器中函数的一部分Php Laravel在控制器函数中使用查询结果,php,laravel-5,Php,Laravel 5,这是我的控制器中函数的一部分 $res= Commande::where('idClient',$id)->where('created_at',$datejour)->where('adresse',$addr)->get(); if($res->isEmpty()) {... } else { try { $resultat =\DB::table('ligne_commandes')-&
$res= Commande::where('idClient',$id)->where('created_at',$datejour)->where('adresse',$addr)->get();
if($res->isEmpty())
{...
}
else
{
try {
$resultat =\DB::table('ligne_commandes')->insert(['idCom'=>$res->idCom,'nomChaussure'=>$nomChaussure,'marque'=>$marque,'couleur'=>$couleur,'quantite'=>'1','pointure'=>$point]);
return redirect()->back()->withErrors('Vous serez livrée dans un délai de 48 heures');
}
catch (\Illuminate\Database\QueryException $e) {
return redirect()->back();
}
}
}
当我尝试使用$res->idCom时,我遇到了这个错误
此集合实例上不存在属性[idCom]。
有人能帮我吗?您正在使用get()
而不是first()
来获取结果集
两者的区别在于get()
将返回与查询条件匹配的所有记录(数组),而first()
将只返回一条与查询条件匹配的记录。因此,根据您的查询,我猜您只希望得到一个结果。因此,请使用first()
而不是get()
如下:
$res= Commande::where('idClient',$id)->where('created_at',$datejour)->where('adresse',$addr)->first();
@F Sorgho,如果答案解决了你的问题,请接受