【问题标题】:laravel foreach and if else loop errors both in count and variables somethinglaravel foreach 和 if else 在计数和变量中循环错误
【发布时间】:2020-04-25 14:08:16
【问题描述】:

第一个错误代码:

@extends('layouts.app')

@section('content')
<h1> posts</h1>
@if(count($posts)>1)

@foreach($posts as $post)

<div class="well">
    <h3>{{$post->title}}</h3>
</div>
@endforeach

@else
<p> no posts found</p>
@endif
@endsection

和图片也附上。 [在此处输入图片描述][1] 在我按照chrome的说明进行操作后,代码将是..即使我已经删除了@并像这样尝试if().. 代码 2 ; @extends('layouts.app')

@section('content')
<h1> posts</h1>
@if(count($posts ?? '')>1)

@foreach($posts ?? '' as $post)

<div class="well">
    <h3>{{$post->title}}</h3>
</div>
@endforeach

@else
<p> no posts found</p>
@endif
@endsection

错误图片:

https://i.stack.imgur.com/21weC.png https://i.stack.imgur.com/RDdF2.png

【问题讨论】:

  • 如果 $posts 未设置 count($posts ?? '') 将其默认为不可数的 '',请尝试 $posts ?? [] 将其默认为空数组。

标签: php laravel laravel-5 web-site-project


【解决方案1】:

一个更短的方法是:

@forelse($posts as $post)

<div class="well">
    <h3>{{$post->title}}</h3>
</div>

@empty

<p> no posts found</p>

@endforelse

您可以在文档中找到更多可用的循环: https://laravel.com/docs/7.x/blade#loops

【讨论】:

    【解决方案2】:

    使用 forelse 而不是 foreach,应该可以完成这项工作

    【讨论】:

      猜你喜欢
      • 2015-07-20
      • 2022-01-25
      • 1970-01-01
      • 2019-12-12
      • 2021-12-30
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      相关资源
      最近更新 更多