翻译成Blade+Laravel一个while循环
Translate to Blade+Laravel a while loop
这段代码有效,但是在我学习Laravel的过程中,我想知道如果使用Blade+Laravel语法,可以更好地实现
<?php
$i = 1;
while ($i <= (5 - $post->images->count())) {
echo '<div class="col"> </div>';
$i++;
}
?>
谢谢
https://laravel.com/docs/5.5/blade#loops
在这种情况下,我建议使用 for 循环而不是 while 循环:
@for ($i = 1; $i <= (5 - $post->images->count()); $i++)
<div class="col"> </div>
@endfor
是的,有。模板就是为此而制作的,你可以看到文档是如何完成类似的事情的:laravel blade : loops
@for ($i = 0; $i < $post->images->count()); $i++)
<div class="col"> </div>
@endfor
@for ($i = 0; $i <= (5 - $post->images->count()); $i++)
<div class="col"> </div>
@endfor
更好的解决方案是使用@foreach
@foreach( $image as $post->images )
<div class="col"> </div>
@endforeach
我不确定这是最好的方法,但是可行。
<?php $z = 0; ?>
@while ($z < 3)
{{ "test".$z }}
<?php $z++ ?>
@endwhile
@php
$i = 0;
@endphp
@while (++$i <= (5 - $post->images->count()))
<div class="col">
</div>
@endwhile
在这种特定情况下,因为您正在循环 count(),所以您应该使用 foreach,但是您可能也有兴趣@forelse:
@forelse($image as $img)
<div class="col"> {{ $img }}</div>
@empty
<div class="col"> NO IMAGES </div>
@endforesle
这段代码有效,但是在我学习Laravel的过程中,我想知道如果使用Blade+Laravel语法,可以更好地实现
<?php
$i = 1;
while ($i <= (5 - $post->images->count())) {
echo '<div class="col"> </div>';
$i++;
}
?>
谢谢
https://laravel.com/docs/5.5/blade#loops
在这种情况下,我建议使用 for 循环而不是 while 循环:
@for ($i = 1; $i <= (5 - $post->images->count()); $i++)
<div class="col"> </div>
@endfor
是的,有。模板就是为此而制作的,你可以看到文档是如何完成类似的事情的:laravel blade : loops
@for ($i = 0; $i < $post->images->count()); $i++)
<div class="col"> </div>
@endfor
@for ($i = 0; $i <= (5 - $post->images->count()); $i++)
<div class="col"> </div>
@endfor
更好的解决方案是使用@foreach
@foreach( $image as $post->images )
<div class="col"> </div>
@endforeach
我不确定这是最好的方法,但是可行。
<?php $z = 0; ?>
@while ($z < 3)
{{ "test".$z }}
<?php $z++ ?>
@endwhile
@php
$i = 0;
@endphp
@while (++$i <= (5 - $post->images->count()))
<div class="col">
</div>
@endwhile
在这种特定情况下,因为您正在循环 count(),所以您应该使用 foreach,但是您可能也有兴趣@forelse:
@forelse($image as $img)
<div class="col"> {{ $img }}</div>
@empty
<div class="col"> NO IMAGES </div>
@endforesle