как создать разрыв строки в цикле - PullRequest
2 голосов
/ 07 февраля 2012

В приведенном ниже коде я хотел бы добавить тег тега останова после того, как переключатель отобразится 5 раз. Я попробовал несколько способов, но продолжаю заставлять все количество переключателей повторяться.

foreach ($salary_tbl as $key=>$value) {
    echo "<span class=\"year\">$key</span><input class=\"margin_r36\" type=\"radio\" value='$value' name='salary_tbl' /><br />";
  }

это то, что я пытался

for ($i=1; $i<=10; $i++) {
 if ($i < 5) {
    foreach ($salary_tbl as $key=>$value) {
     echo "<span class=\"year\">$key</span><input class=\"margin_r36\" type=\"radio\" value='$value' name='salary_tbl' /><br />";
   }
  }
 }

Спасибо

Ответы [ 5 ]

5 голосов
/ 07 февраля 2012
$count = 0;
foreach ($salary_tbl as $key=>$value) {
    if($count == 5) {
         //Apply the line break here
    }
    echo "<span class=\"year\">$key</span><input class=\"margin_r36\" type=\"radio\" value='$value' name='salary_tbl' /><br />";
    $count++;
}

или если вы хотите, чтобы перевод строки производился каждые 5 записей, вы можете слегка изменить код на.

$count = 0;
foreach ($salary_tbl as $key=>$value) {
    if($count && $count%5 == 0) {
         //This will apply the line break for every five records
    }
    echo "<span class=\"year\">$key</span><input class=\"margin_r36\" type=\"radio\" value='$value' name='salary_tbl' /><br />";
    $count++;
}

другое мое предложение: вместо использования escape-символа \ вы могли быпросто используйте его с одинарными кавычками и оператором конкатенации, который гораздо более читабелен. Например,

.

echo '<span class="year">' . $key . '</span><input class="margin_r36" type="radio" value="' . $value . '" name="salary_tbl"/><br />';

разве это не намного более читаемо сейчас?

1 голос
/ 07 февраля 2012

Если я прав, вы хотите, чтобы перерыв повторялся каждые 5 переключателей.Вы можете использовать модуль.Если счет делится на 0 (то есть его 5 10 15 20 ...), тогда мы добавляем перерыв

$count=0;
foreach ($salary_tbl as $key=>$value) {
if($count and $count%5==0) echo "<br/>";
echo "<span class=\"year\">$key</span><input class=\"margin_r36\" type=\"radio\" value='$value' name='salary_tbl' /><br />";
$count++;
 }
1 голос
/ 07 февраля 2012
$n = 0;
foreach ($salary_tbl as $key=>$value) {
    echo "<span class=\"year\">$key</span><input class=\"margin_r36\" type=\"radio\" value='$value' name='salary_tbl' />";
    if($n % 5 == 0){
        echo "<br />";
    }
    $n++;
}
0 голосов
/ 07 февраля 2012

Если вы хотите разрывать каждую 5-ю строку, вы можете использовать по модулю:

if ($i % 5 == 0) { 
  // line break
}
0 голосов
/ 07 февраля 2012
$i = 0;
foreach ($salary_tbl as $key=>$value) {
    if ($i >= 5) {
      // Line break
      $i=0;
    }
    echo "<span class=\"year\">$key</span><input class=\"margin_r36\" type=\"radio\" value='$value' name='salary_tbl' /><br />";
    $i++;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...