Laravel视图报Undefined array key 1错误如何解决
问题产生原因
控制器部分的数据查询、视图传参逻辑没有问题,报错根源是视图文件的Blade模板语法书写错误:@foreach作为Blade的循环控制指令,要求必须使用英文小括号包裹遍历表达式,你的代码里把@foreach后面本该写左小括号(的位置错写成了左大括号{,导致模板引擎无法正确解析循环结构,编译生成的PHP代码逻辑错乱,最终触发Undefined array key 1运行错误。
修复方案
- 修改视图中
@foreach行的语法,将错写的左大括号替换为英文左小括号,和表达式末尾的右小括号正确配对即可,修正后的循环代码如下:
@foreach($articles as $article) <div class="card" style="width: 18rem;"> <div class="card-body"> <h5 class="card-title">{{$article->title}}</h5> <h6 class="card-subtitle mb-2 text-muted">Card subtitle</h6> <p class="card-text">{{$article->description}}</p> <a href="#" class="card-link">Card link</a> <a href="#" class="card-link">Another link</a> </div> </div> @endforeach
- 如果修改后页面仍显示旧报错,执行命令
php artisan view:clear清除Blade模板编译缓存即可。
内容的提问来源于stack exchange,提问作者Aurora
相关产品推荐
相关产品推荐

