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

Laravel获取首个图片元素报错:Attempt to read property 'image' on null

问题原因及解决办法

问题出在不是所有产品都关联了图片记录:

  • 你测试的那台产品刚好有对应的image数据,所以$product->image->first()能返回包含image字段的对象;
  • 但如果某个产品没有关联任何图片,$product->image->first()会返回null,这时候再去访问->image就会触发“Attempt to read property "image" on null”的错误。

解决办法

可以用以下几种方式避免报错:

  1. 使用可选链操作符(PHP 8.0+支持):
{{ $product->image->first()?->image }}

如果first()返回null,整个表达式会直接返回null,不会报错。

  1. 使用Laravel的optional辅助函数:
{{ optional($product->image->first())->image }}

效果和可选链类似,兼容更低版本的PHP。

  1. 添加判断逻辑,设置默认值:
{{ $product->image->first() ? $product->image->first()->image : '默认图片的路径' }}

当没有图片时,显示你指定的默认图片。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 05:09:53