【发布时间】:2018-02-24 20:21:07
【问题描述】:
我正在使用 Laravel Framework 5.3 更新我的 php PDO 网站。我发现 Laravel 非常易于使用,但是我不知道实现结果的语法的函数很少。
我有一个 Laravel 控制器
public function index(){
$posts = Post::latest()->get();
return view('/home', compact('posts'));
}
我在刀片中使用 foreach 循环获取数据
@foreach ($posts as $row)
@endforeach
类似于 PDO 中的 fetchAll() 方法
$row = $posts->fetchAll();
现在我希望逻辑得到类似结果的 fetch(PDO::FETCH_ASSOC),以便我可以分配
$row = $posts->fetch(PDO::FETCH_ASSOC);
我必须这样做,因为我想在刀片中使用 for 循环来显示数据,如果我使用 foreach 循环,那么它会为迭代结果创建重复。以下是我必须用 Laravel 更新的 PDO 代码
for($i=0; $i<$count_photos; $i++){
$row_gallery = $get_photos->fetch(PDO::FETCH_ASSOC);
$pst_id = $row_gallery['post_id'];
$img = $row_gallery['img_name'];
echo '<div class="img_gallery"><div class="gallery'.$i.'"><a href="uploads/'. $img . '" data-lightbox="'.$pst_id.'"> <img class="img-responsive" src="uploads/'. $img . '"></a></div></div>';
}
【问题讨论】:
-
你想做什么?只是从表中获取第一行?如果是这样,那么只需执行
Post::latest()->first();,它只返回一个行/对象。 -
Post与您的$get_photos查询有何关系? -
@Ross,我有两张桌子,一张用来发帖,一张用来放照片。照片表可以有多张与单个帖子相关联的照片。我在模型中使用了 hasMany() 关系来获取该帖子的照片。
-
酷。您只是想获得一篇或所有帖子吗?
-
我建议阅读 laravel.com/docs/5.3/… 特别是
Retrieving Polymorphic Relations
标签: php mysql laravel pdo laravel-5.3