domenica 18 novembre 2018

I cicli in Blade

Ciclare è importante e necessario. Blade ovviamente mappa le istruzioni di PHP ma permette di avere qualche utile hook incluso nel ciclo per fare della logica.

Nel codice sottostante è interessante notare l'uso della variabile automatica $loop che contiene info sul ciclo come l'attuale iterazione, quanti elementi mancano, quanto è lungo il ciclo ecc... Nei cicli annidati è anche possibile avere a disposizione la profondità attuale ($loop->depth) e accedere al ciclo padre con ($loop->parent)

E' possibile inserire il continue addirittura impostanto la condizione direttamente nell'istruzione mentre con forelse è possibile gestire velocemente i casi in cui occorre stampare qualcosa quando la lista è vuota

 @foreach ($list as $element)
   @php $color = "black" @endphp
   @if ($loop->first)
      @php $color = "#990000" @endphp
   @endif

   @if ($loop->last)
      @php $color = "#000099" @endphp
   @endif

   @continue ($element == "fifth")
   <li style = "color : {{ $color }} "> 
     {{ $element }} ( {{$loop->iteration}} / {{$loop->count}} / {{$loop->remaining}} )
   </li>

 @endforeach

 @forelse ($nolist as $noelement)
     {{ $noelement }}
  @empty
     <p> No Element </p>
 @endforelse

Nessun commento:

Posta un commento