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,如果答案解决了你的问题,请接受