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

Laravel数组无法传递到Blade模板且取值为空该如何解决?

Laravel数组传递到Blade为空修复方案

错误1:compact函数参数错误

compact函数需要接收变量名的字符串作为参数,而非变量本身。你当前写法compact($resultList)会将数组内容作为键名匹配变量,根本无法生成正确的传值结构,视图中自然不存在$resultList变量。

修正后控制器代码:

public function stackover(Request $request)
{
    $resultList = array();
    $dateListArray = $this->getChargeData($request->id);
    Log::debug($dateListArray);
    foreach($dateListArray as $datelist)
    {
        array_push($resultList,$datelist);
    }
    Log::debug("CHARGELIST");
    Log::debug($resultList);
    // 仅修改此处,给变量名加引号即可
    return view('stacker', compact('resultList'));
}

错误2:Blade输出数组到JS的格式错误

PHP数组无法直接输出到JS上下文,必须转换为JSON格式,直接用{{$resultList}}输出会得到Array字符串或语法错误。

修正后Blade代码:

// 使用Laravel内置的@json指令自动完成转码和转义
console.log(@json($resultList ?? []));

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 19:45:02