【问题标题】:ErrorException (E_ERROR)Trying to get property 'title' of non-objectErrorException (E_ERROR) 试图获取非对象的属性“标题”
【发布时间】:2019-11-16 15:16:43
【问题描述】:

ErrorException (E_ERROR) 试图获取非对象的属性“标题” (看法: D:\xampp\htdocs\xampp\practice\freecode\resources\views\profiles\index.blade.php)

以前的例外情况

试图获取非对象 (0) 的属性“标题”

            <div class="d-flex">
                <div ><strong>{{ $user->posts->count() }}</strong> posts</div>
                <div class="pl-5"><strong>23k</strong> followers</div>
                <div class="pl-5"><strong>435</strong> following</div>
            </div>
            <div class="pt-4 font-weight-bold" ><strong>{{ $user->profile->title }}</strong></div>
            <div>{{ $user->profile->description }}</div>
            <div><a href="#">{{ $user->profile->url ??'N/A' }}</a></div>
    </div>

</div>
<div class="row pt-5">
    @foreach($user->posts as $post)
    <div class="col-4" >
        <img src="/storage/{{ $post->image }}" class="w-100"> 
    </div>
    @endforeach

发布后显示此错误。

【问题讨论】:

    标签: php laravel


    【解决方案1】:

    如果您清楚地阅读了错误消息,则表明您正在尝试访问空对象上的标题。这意味着以下关系为空。

     $user->profile // returns null
    

    一种快速处理此错误的方法是使用空合并运算符。这将检查任何时候的第一条语句是否返回 null,如果不是,则返回第一条语句。否则它会退回到第二个语句。

    {{ $user->profile->title ?? 'user not found'; }}
    

    【讨论】:

    • 使用此代码后 {{ $user->profile->title ?? '未找到用户;' }}。显示“未找到用户;”并显示图片。
    • 有帮助还是没有达到预期?
    【解决方案2】:

    使用数组代替对象

    {{ $user->profile['title'] }}
    

    【讨论】:

      【解决方案3】:

      要快速修复它,请执行此 raplace

           $user->profile->title 
      

      通过

          {{ $user->profile? $user->profile->title:"" }}
      

      【讨论】:

      • 你必须投票给最佳答案(帮助你的anwser),这样问题就会关闭,其他有同样问题的用户应该使用这个答案
      猜你喜欢
      • 1970-01-01
      • 2019-08-24
      • 2017-08-02
      • 2018-04-14
      • 2019-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多