Laravel 5查询生成器记录集数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel 5查询生成器记录集数组相关的知识,希望对你有一定的参考价值。

我用查询构建器创建了一个返回多行的查询,当我尝试使用foreach循环打印记录时,收到此错误:

“试图获得非对象的属性”

Controller:
$productPhotos = DB::table('productsphotos')->where('ProductId', $id);

View:
@foreach ($productPhotos as $item)
  <li><img src="{{ $item->PhotoThumb }}" /></li>
@endforeach
答案

更改

$productPhotos = DB::table('productsphotos')->where('ProductId', $id);

 $productPhotos = DB::table('productsphotos')->where('ProductId', $id)->get();
另一答案
$productPhotos = DB::table('productsphotos')->where('ProductId', $id)->get();

此查询将为您提供对象数组,就像您想要使用的数组一样

$productPhotos = DB::table('productsphotos')->where('ProductId', $id)->get()->toArray();

以上是关于Laravel 5查询生成器记录集数组的主要内容,如果未能解决你的问题,请参考以下文章

laravel中查询数据结果集变为数组

Laravel 5.8 有条件地插入 sql 片段

如何从原始查询中检索结果集作为数组而不是 Laravel 3 中的对象

Laravel 查询生成器。返回嵌套结构化数据

使用 laravel 查询生成器更新记录排名

在 Laravel 5.4 的查询生成器中添加 lists() 方法