You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在视图中访问控制器传递的数组?附代码示例

正确访问数组数据并展示的方法

你的问题核心是数据类型不匹配:控制器传递的$data是索引数组嵌套关联数组,但视图里用了对象属性访问语法($item->name),这会导致报错。同时视图里的<tr>标签存在未正确闭合的问题,需要修正。

修正后的视图代码

@foreach($data as $item)
 <tr>
  <td>{{ $loop->iteration }}</td>
  <td>{{ ucwords($item['name']) }}</td>
  <td>{{ $item['desc'] }}</td>
  <td>{{ $item['age'] }}</td>
 </tr>
@endforeach

关键修改点

  • 将对象访问语法 $item->xxx 改为数组键访问语法 $item['xxx'],匹配数据的数组结构
  • 把最后一行的 <tr> 修正为 </tr>,确保HTML标签闭合

可选:将数组转为对象(如果偏好对象语法)

如果你习惯用->访问属性,可以在控制器里把数组转换为对象集合后再传递:

// 控制器中修改数据传递逻辑
$convertedData = collect($data)->map(function($item) {
    return (object)$item;
});
return view($this->folder_path . 'index', compact('convertedData'));

之后视图里就可以继续用$item->name的语法,记得把循环变量改成$convertedData。

内容的提问来源于stack exchange,提问作者kennie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 16:41:32