【发布时间】:2015-10-14 15:57:54
【问题描述】:
我试图从 mysql 查询中输出每一行的样式略有不同,但我想尽量避免使用偏移量和多个查询。
当前代码:
$sql = "SELECT * FROM news ORDER BY id DESC LIMIT 1";
$query = mysqli_query($connection, $sql);
while($row = mysqli_fetch_array($query)){
$title = $row["title"];
// output first news item with a style
echo '<div class="style-1">'.$title.'</div>';
}
$sql = "SELECT * FROM news ORDER BY id DESC LIMIT 1 OFFSET 1";
$query = mysqli_query($connection, $sql);
while($row = mysqli_fetch_array($query)){
$title = $row["title"];
// output second news item with different style
echo '<div class="style-2">'.$title.'</div>';
}
因此,我想避免简单地使用 2 个(或更多)查询,因为我想为每个 while 行使用不同的 css 类,如下所示:
$sql = "SELECT * FROM news ORDER BY id DESC LIMIT 10";
$query = mysqli_query($connection, $sql);
while($row = mysqli_fetch_array($query)){
$title = $row["title"];
} // end while
$i = 1;
for($i; $i<2; $i++){ // output first row item with first style
echo '<div class="style-1">'.$title.'</div>';
} // end for loop 1
for($i; $i<3; $i++){ // output first row item with second style
echo '<div class="style-2">'.$title.'</div>';
} // end for loop 2
for($i; $i<4; $i++){ // output third row item with third style
echo '<div class="style-3">'.$title.'</div>';
} // end for loop 3
...
期望的输出:
<div class="style-1">News Headline Title 1</div>
<div class="style-2">News Headline Title 2</div>
<div class="style-3">News Headline Title 3</div>
...
【问题讨论】:
-
你能用表格结构更新你的问题吗?还有什么应该是所需的输出?
-
“表结构”到底是什么意思?所需的输出写在上面: echo ''.$title.'';
-
期望的输出应该是什么?
标签: php mysql for-loop foreach