如何修改 SQL 结果集,使结果为 (A) 而不是 (B)。我需要以某种方式打破每两个结果的循环,以便这两个结果包裹在一个行类中。请看下面:
(A) 我喜欢发生什么:
<div class="row">
<div class="large-6 columns"></div>
<div class="large-6 columns"></div>
</div>
<div class="row">
<div class="large-6 columns"></div>
<div class="large-6 columns"></div>
</div>
(B) 发生了什么:
<div class="row">
<div class="large-6 columns"></div>
<div class="large-6 columns"></div>
<div class="large-6 columns"></div>
<div class="large-6 columns"></div>
</div>
代码:
<div class="row">
<?php $query = "SELECT * FROM recipe";
$result = mysql_query($query);
while($row = mysql_fetch_array($result)) {
?>
<div class="large-6 columns">
<h4><?php echo $row['recipe_title'] ?></h4>
<p><?php echo $row['recipe_description'] ?></p>
</div>
<?php } ?>
</div>
最佳答案
您可以尝试添加一个计数器变量,每次调用循环时该变量都会增加。使用modulus operator然后在循环被调用两次后关闭当前行并打开一个新行:
<div class="row">
<?php $query = "SELECT * FROM recipe";
$result = mysql_query($query);
$i = 1;
while($row = mysql_fetch_array($result)) {
?>
<div class="large-6 columns">
<h4><?php echo $row['recipe_title'] ?></h4>
<p><?php echo $row['recipe_description'] ?></p>
</div>
<?php
if($i % 2 === 0) {
echo '</div><div class="row">';
}
$i++;
}
?>
</div>
关于php - 如何以 2 组为一组回显结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27107307/