如何用div包装每个案例?

时间:2016-07-06 07:31:58

标签: php

出于某种原因,我需要使用切换案例。现在我无法用ul包装每个案例。

foreach ($array as $key => $value) {
    switch ($value->myvar) {
        case '11':
            echo '<li>' . $value->myvar . '</li>';
            break;

        case '12':
            echo '<li>' . $value->myvar . '</li>';
            break;

        case '13':
            echo '<li>' . $value->myvar . '</li>';
            break;

        default:
            echo 'default';
            break;
    }
}

结果:

<li>11</li>
<li>11</li>
<li>12</li>
<li>12</li>
<li>13</li>
<li>13</li>
<li>13</li>

如果我在每种情况下用ul包装,那么我将每个单独的列表包含在ul中。那么,我如何将其包裹起来,如下所示:

<ul>
  <li>11</li>
  <li>11</li>
</ul>

<ul>
  <li>12</li>
  <li>12</li>
</ul>

<ul>
  <li>13</li>
  <li>13</li>
  <li>13</li>
</ul>

可能有替代而不是使用开关案例。我也很乐意得到答案,这将是我所希望的列表将被呈现的预期。

1 个答案:

答案 0 :(得分:1)

你需要有三个不同的变量并在循环后回显它们。

$ul11 = "<ul>";
$ul12 = "<ul>";
$ul13 = "<ul>";
foreach ($array as $key => $value) {
  switch ($value->myvar) {
    case '11':
       $ul11.='<li>' . $value->myvar . '</li>';
        break;

    case '12':
        $ul12.='<li>' . $value->myvar . '</li>';
        break;

    case '13':
        $ul13.='<li>' . $value->myvar . '</li>';
        break;

    default:
        echo 'default';
        break;
   }
}
$ul11.="</ul>";
$ul12.="</ul>";
$ul13.="</ul>";

echo $ul11;
echo $ul12;
echo $ul13;

希望这就是你所需要的。