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

在Laravel Blade视图中访问API返回数组报Undefined index错误如何解决

问题解决方案

错误原因

你当前遍历得到的$dt是外层二级数组,仅包含payload、count、total三个键,mDeviceID实际存储在$dt['payload']下的每一条设备记录中,因此直接访问$dt['mDeviceID']会报索引不存在错误。

正确实现代码

场景1:遍历所有payload下的设备记录(需要访问payload内其他字段时用)

<div class="row">
    <div class="col-md-12">
        <table class="">
            <!-- 第一层遍历外层设备分组 -->
            @foreach($deviceStatus as $deviceGroup)
                <!-- 第二层遍历分组下的payload设备列表 -->
                @foreach($deviceGroup['payload'] as $device)
                <tr>
                    <th>DEVICE NUMBER</th>
                    <td>{{ $device['mDeviceID'] ?? '未获取到设备ID' }}</td>
                </tr>
                @endforeach
            @endforeach
        </table>
    </div>
</div>

代码中?? '未获取到设备ID'是为了兼容异常缺失字段的情况,避免再次报错,你如果确定所有数据都有该字段可以省略。

场景2:仅展示设备号(不需要访问payload内其他字段时用)

观察到你的API返回中外层数组的键与mDeviceID值完全一致,你也可以直接取外层遍历的键,少一层遍历性能更好:

<div class="row">
    <div class="col-md-12">
        <table class="">
            @foreach($deviceStatus as $deviceId => $deviceGroup)
            <tr>
                <th>DEVICE NUMBER</th>
                <td>{{ $deviceId }}</td>
            </tr>
            @endforeach
        </table>
    </div>
</div>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 04:54:02