猿问

我想在 PHP 中只为每个循环执行一次 if else 语句

我的代码是:


<tbody>

                <?php

            $query = "SELECT * FROM `tblcourse`";

            $mydb->setQuery($query);

            $cur = $mydb->loadResultList();

            foreach ($cur as $result)

            {?>

              <tr>

                <td align="center" width="20%">

                    <?php

                    foreach($arr as $v)

                    {

                        if ($result->COURSEID==$v) {

                            echo "<a href='index.php?q=rollout'> Roll out</a>";

                        }

                        else {

                            echo "<a href='index.php?q=enroll'> Enroll</a>";

                        }

    

                }?>


                 </td>

            </tr>

              <?php

            }

          ?>

        </tbody>

如果 $arr 有 2 个元素($cur 有 5 个元素),那么 我想要这样的输出:-


推出

注册

注册

推出

注册

相反,我得到:-


推出注册

注册 注册

注册 注册

注册推出

注册 注册


长风秋雁
浏览 82回答 1
1回答

白猪掌柜的

如果 $result 的 COURSEID 是 arr 中的值之一,则看起来好像您想要输出 ROLL OUT,否则您想要输出 ENROLL。删除foreach($arr as $v)循环并替换为if (in_array($result->COURSEID,$arr)) {&nbsp; echo "<a href='index.php?q=rollout'> Roll out</a>";} else {&nbsp; echo "<a href='index.php?q=enroll'> Enroll</a>";}
随时随地看视频慕课网APP
我要回答