Php 将查询中的第一项设置为与其他项不同的格式

Php 将查询中的第一项设置为与其他项不同的格式,php,mysql,Php,Mysql,不知道您是否可以帮我解答一个php/查询问题 我希望第一行的格式与其他行不同(总是返回20) 我现在的查询如下所示: <?php $nt=array(); $query="SELECT * FROM table WHERE field=item ORDER BY date DESC LIMIT 20"; $rt=mysql_query($query); echo mysql_error(); while($nt=mysql_fetch_array($rt)){

不知道您是否可以帮我解答一个php/查询问题

我希望第一行的格式与其他行不同(总是返回20)

我现在的查询如下所示:

<?php
$nt=array();
$query="SELECT * FROM  table WHERE field=item ORDER BY date DESC LIMIT 20";
$rt=mysql_query($query);
echo mysql_error();

while($nt=mysql_fetch_array($rt)){              
echo "<p class='columnitem'><a href='/item/".$nt[id]."'>".$nt[Title]."</a></p>";
}
?>

最简单的解决方案通常效果最好:

$row=1;
while($nt=mysql_fetch_array($rt)){                              
if($row==1){
    echo "<p class='firstrow'><a href='/item/".$nt[id]."'>".$nt[Title]."</a></p>";
} else {
    echo "<p class='columnitem'><a href='/item/".$nt[id]."'>".$nt[Title]."</a></p>";
}
$row=$row+1;
}
$row=1;
而($nt=mysql\u fetch\u数组($rt)){
如果($row==1){
回声“

”; }否则{ 回声“

”; } $row=$row+1; }
您也可以从MySQL端执行此操作:

$nt=array();
$query="SET @rownum = 0; SELECT (@rownum:=@rownum+1) as rownum,table.* FROM  table WHERE field=item ORDER BY date DESC LIMIT 20";
$rt=mysql_query($query);
echo mysql_error();

while($nt=mysql_fetch_array($rt)){                              
echo "<p class='" . ($nt['rownum'] == 1 ? 'firstrow' : 'columnitem') . "'><a href='/item/".$nt[id]."'>".$nt[Title]."</a></p>";
}
?>
$nt=array();
$query=“设置@rownum=0;从表中选择(@rownum:=@rownum+1)作为rownum,表。*,其中字段=按日期描述的项目订单限制20”;
$rt=mysql\u查询($query);
echo mysql_error();
而($nt=mysql\u fetch\u数组($rt)){
echo“

”; } ?>
不过,这有点麻烦,因为您必须记住手动设置@rownum变量。这里希望将来的MySQL版本能像SQL Server的
行数()
函数一样

$nt=array();
$query="SET @rownum = 0; SELECT (@rownum:=@rownum+1) as rownum,table.* FROM  table WHERE field=item ORDER BY date DESC LIMIT 20";
$rt=mysql_query($query);
echo mysql_error();

while($nt=mysql_fetch_array($rt)){                              
echo "<p class='" . ($nt['rownum'] == 1 ? 'firstrow' : 'columnitem') . "'><a href='/item/".$nt[id]."'>".$nt[Title]."</a></p>";
}
?>