我想知道如何替换这个循环: while($ row = mysql_fetch_array($ res)) 通过for循环。
我想知道,因为在我的网站上,我想在我的网站上显示数据,但第一行需要不同的布局。
所以我想拥有的是这样的:
$row[0]
for ($i = 1; $i <= mysql_num_rows($result); $i++) {
$row[$i]
}
我在这里尝试了一些搜索,但是找不到对我来说合乎逻辑的东西:我看到的大多数例子都会对服务器执行一个新的SQL查询,这对速度来说不是很好,是吗?
请告诉我!
答案 0 :(得分:4)
我不这样做。我会做这样的事情:
$first=true;
while ($row=mysql_fetch_array($res)) {
if ($first) {
//Extra formatting or whatever you need to do can go here
}
//Other code goes here
$first=false;
}
答案 1 :(得分:0)
每次运行mysql_fetch_array
时,它都会获取 next 行,因此您可以在循环外运行一次,然后让循环遍历其余行。
不发生的是mysql_data_seek
,会导致它在顶部重启,但你不是那样做的!
实施例
$row = mysql_fetch_array($res);
# process first row here
while ($row = mysql_fetch_array($res)) {
# process second and subsequent rows here
}
答案 2 :(得分:-1)
for ($i = 1; $row = mysql_fetch_row($result); $i++) {
$row[$i]
}
当然它是文字的,但完全没用的答案 要在您的网站上显示数据,您应该使用模板 因此,您必须首先将数据放入数组