2017-02-13 251 views
0
@foreach ($image as $image) 

     <div class="col-md-4"> 

     @if ($image->current_step == 'step'.$loop->iteration AND $image->isCompleted == '1') 
      <div class="panel panel-success"> 

     @elseif ($image->current_step == 'step'.$loop->first OR $image->current_step == 'step'.$loop->index AND $image->isCompleted == '1') 
      <div class="panel panel-default"> 

     @elseif ($image->current_step == 'step'.$loop->iteration AND $image->isCompleted == '0') 
      <div class="panel panel-danger"> 


     @endif 
@endforeach 

我已经创建了一个循环来生成一些面板,但是我希望面板的样式基于正确的if语句。如果语句在foreach循环内

它似乎遇到了第二个if语句,只要它碰到该部分,询问是否满足前面的步骤条件。

如果任何人可以指向我的大方向或另一种方式,我应该去。

感谢

+1

你可以用'和'和'或'而不是'&&'和''||? – Luke

+0

@Luke - 是的,你可以 – Gravy

+0

@Gravy - 你能找到我一些相关的文档吗?我知道你可以使用标准的逻辑运算符,但是找不到任何提及的英语替代品。 – Luke

回答

1

你的第二否则,如果:

$a = false; 
    $b = true; 
    $c = false; 

    if ($a or $b and $c) { 
     dd('a or b and c'); 
    } 

    dd(false); 

//上面的代码将输出错误。这是打算?

你可以写一个真值表来帮助你

A B C | A | B & C 
------------------------- 

0 0 0 | 0 0 0 0 0 
0 0 1 | 0 0 0 0 1 
0 1 0 | 0 0 1 0 0 
0 1 1 | 0 1 1 1 1 
1 0 0 | 1 1 0 0 0 
1 0 1 | 1 1 0 0 1 
1 1 0 | 1 1 1 0 0 
1 1 1 | 1 1 1 1 1