Как я могу проверить, является ли массив пустым? - PullRequest
0 голосов
/ 28 сентября 2018

У меня проблема;вот часть моего контроллера;он показывает мне результаты, которые я хочу.

$angebotDetails = Angebot::where('firma',$id)->get();

Но если есть пустые, он ничего не показывает, потому что есть пустые.
Теперь я хочу, если они пусты, он должен показать мне некоторый текст, но я не понимаю.
У меня есть foreach, который показывает мне все мои результаты;Я пытался isEmpty так:

@foreach($angebotDetails as $key => $angebotDetail)
  @if($angebotDetails->isEmpty)
  <h4>Wir haben momentan leider keine Angebote für Dich.</h4>
  @endif

или

if(empty($angebotDetails)

или === 0 или === '0' или = null

, но ничего не показывает, Я не знаю почему.

Если я попробовал dd($angebotDetails), он показывает мне

#items: []

, и если есть что-то, он показывает мне

#items: array[1]

Ответы [ 3 ]

0 голосов
/ 28 сентября 2018

Вы можете использовать директиву forelse

@forelse ($angebotDetails as $key => $angebotDetail)
    //
@empty
    <h4>Wir haben momentan leider keine Angebote für Dich.</h4>
@endforelse

Код, который вы используете, чтобы проверить, пусто ли $angebotDetails, не будет работать.Ваш код попадет в директиву цикла foreach, только если $angebotDetails содержит некоторые результаты, в противном случае он пропустит весь код в директиве foreach

.
0 голосов
/ 28 сентября 2018

Проверьте, пуст ли $ angebotDetails перед вашим foreach, как это:

@if (count($angebotDetails)) // $angebotDetails is NOT empty
    @foreach($angebotDetails as $key => $angebotDetail)
        // do something with $angebotDetail
    @endforeach
@elseif // $angebotDetails IS empty
    <h4>Wir haben momentan leider keine Angebote für Dich.</h4>
@endif
0 голосов
/ 28 сентября 2018

$angebotDetails - это массив, поэтому вы можете проверить, используя count или sizeof

@if(count($angebotDetails) === 0) // это пустой массив @else // он не пустой @endif

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...