您好,我在显示项目方面有问题。
我有这个代码:
$counter = 0;
foreach ($results as $result){
if(++$counter === 1) {
$outtext .= "<li><img src='".$result."' alt='".$key." czasoumilacz'/></li>";
} else if (++$counter === 2){
$outtext .= "<li><img src='".$result."' alt='".$key." granie na czekanie'/></li>";
} else if (++$counter === 3){
$outtext .= "<li><img src='".$result."' alt='".$key." halodzwonek'/></li>";
} else if (++$counter === 4){
$outtext .= "<li><img src='".$result."' alt='".$key." muzyka na czekanie'/></li>";
} else if (++$counter === 5){
$outtext .= "<li><img src='".$result."' alt='".$key." halo granie'/></li>";
} else {
$outtext .= "<li><img src='".$result."' alt='".$key." czasoumilacz'/></li>";
}
}
我尝试做这样的事情:
如果 foreach 有第二个元素,我将显示:
$outtext .= "<li><img src='".$result."' alt='".$key." granie na czekanie'/></li>";
接下来,如果foreach将给出第5个元素,它将显示不同的代码:
$outtext .= "<li><img src='".$result."' alt='".$key." czasoumilacz'/></li>";
因此,对于每个其他元素,我希望显示不同的值。这是怎么回事??我的代码显示总是最后一个条件。
你可以通过使用
foreach 循环来获取计数器,如下所示
foreach ($results as $counter => $result){
if($counter === 1) {
$outtext .= "<li><img src='".$result."' alt='".$key." czasoumilacz'/></li>";
} else if ($counter === 2){
$outtext .= "<li><img src='".$result."' alt='".$key." granie na czekanie'/></li>";
} else if ($counter === 3){
$outtext .= "<li><img src='".$result."' alt='".$key." halodzwonek'/></li>";
} else if ($counter === 4){
$outtext .= "<li><img src='".$result."' alt='".$key." muzyka na czekanie'/></li>";
} else if ($counter === 5){
$outtext .= "<li><img src='".$result."' alt='".$key." halo granie'/></li>";
} else {
$outtext .= "<li><img src='".$result."' alt='".$key." czasoumilacz'/></li>";
}
}
带有switch
运算符的优化版本:
在 switch 语句中,条件仅计算一次...
foreach ($results as $counter => $result){
$li_part = "<li><img src='".$result."' alt='".$key;
switch ($counter) {
case 1:
$outtext .= $li_part ." czasoumilacz'/></li>";
break;
case 2:
$outtext .= $li_part ." granie na czekanie'/></li>";
break;
case 3:
$outtext .= $li_part ." halodzwonek'/></li>";
break;
case 4:
$outtext .= $li_part ." muzyka na czekanie'/></li>";
break;
case 5:
$outtext .= $li_part ." halo granie'/></li>";
break;
default:
$outtext .= $li_part ." czasoumilacz'/></li>";
}
}