我正在用一个前馈循环来尝试模数除法,而我对它的理解有点困难。
$counter = 0;
foreach($result as $row){
if(isset($row['username'])){
if (($counter) % 2 == 0){
echo "<tr class=\"r1\"><td class=\"center\"><a href=\"profile.php?username=" . $row['username'] . "\">" . $row['username'] . "</a></td></tr>";
}
else{
echo "<tr class=\"r0\"><td class=\"center\"><a href=\"profile.php?username=" . $row['username'] . "\">" . $row['username'] . "</a></td></tr>";
}
$counter++;
}
}我想输出:
<tr class="r0">
<td><a href="profile.php?username=Bob">Bob</a></td>
<td><a href="profile.php?username=Daniel">Daniel</a></td>
</tr>
<tr class="r1">
<td><a href="profile.php?username=Dylan">Dylan</a></td>
<td><a href="profile.php?username=Bruce">Bruce</a></td>
</tr>但是现在,用我的循环,我输出:
<tr class="r1">
<td<a href="profile.php?username=Bob">Bob</a></td>
</tr>
<tr class="r0">
<td><a href="profile.php?username=Daniel">Daniel</a></td>
</tr>
<tr class="r1">
<td><a href="profile.php?username=Dylan">Dylan</a></td>
</tr>
<tr class="r0">
<td><a href="profile.php?username=Bruce">Bruce</a></td>
</tr>有人能给我解释一下模数除法是怎么工作的吗?谢谢。
发布于 2014-04-26 15:02:44
我把这个搞定了。我的问题是我的数组是多维的,所以我把它转换成一个数组。之后,我使用了array_chunks。
$chunks = array_chunk($l, 2);
$i=0;
foreach($chunks as $mychunk){
if($i%2== 0){
echo "<tr class=\"r0\">";
} else { echo "<tr class=\"r1\">"; }
$i++;
foreach($mychunk as $newchunk)
{
echo "<td class=\"center\"><a href=\"profile.php?username=" . $newchunk . "\">" . $newchunk . "</a></td>";
}
echo "</tr>";
}对于任何希望将多维数组转换为一维数组的人:
function array_flatten($array) {
if (!is_array($array)) {
return FALSE;
}
$result = array();
foreach ($array as $key => $value) {
if (is_array($value)) {
$result = array_merge($result, array_flatten($value));
}
else {
$result[$key] = $value;
}
}
return $result;
}https://stackoverflow.com/questions/23306537
复制相似问题