我的函数中有一个 return 语句:
function fun($result)
{
$counter = 0;
while($row=mysql_fetch_array($result))
{
/*if($counter==2)
{
return $name;
}*/
$user=$row['message'];
$sql2="select username from members where id='$user'";
$result2=mysql_query($sql2);
$row2=mysql_fetch_array($result2);
$name .= $row2['username']." and ";
$counter++;
if($counter==2)
{
return $name;
}
}
}
返回块(注释)不起作用,无论条件如何,它都会立即终止函数的执行。但是,如果将返回块放置在代码中所示的位置,则可以正常工作。为什么?我只想返回 2 行。似乎无论放在之前还是之后都应该起作用,因为它取决于计数器的值。在将新行添加到 $name 变量之前检查条件。第一行将添加到 $name 并且 $counter 递增,然后检查条件等等。出了什么问题?