我应该从数据库中提取数据,然后以与其他方式不同的方式显示第一条记录。 我已经这样做了,但看起来有点麻烦
$result = $this->db->mysqli->query("SELECT filename FROM photos WHERE id = $id order by ordering");
if ($result)
{
while($row = $result->fetch_array(MYSQLI_ASSOC))
{
$rows[] = $row;
}
}
$count = count($rows);
for ($i = 0; $i < $count; $i++)
{
if ($i == 1)
{
echo $rows[$i]['filename']. "<br>";
}
else
{
echo $rows[$i]['filename']. "<br>";
}
}
的var_dump($行)
array
0 =>
array
'filename' => string '69_1.jpg' (length=17)
1 =>
array
'filename' => string '69_2.jpg' (length=17)
2 =>
array
'filename' => string '69_3.jpg' (length=17)
有一种更好,更清洁的方法。感谢
答案 0 :(得分:1)
$first = true;
while (...) { // or foreach () or whatever
if ($first) {
...
$first = false;
} else {
...
}
}
答案 1 :(得分:1)
我不知道为什么你先创建一个数组然后循环显示它,你可以这么简单地用
$result = $this->db->mysqli->query("SELECT filename FROM photos WHERE id = $id order by ordering");
if ($result)
{
$first = true;
while ($row = $result->fetch_array(MYSQLI_ASSOC))
{
if ( $first)
{
// display your first row here
$first = false;
continue;
}
// display other rows here
}
}