从循环/ while获取第一个条目

时间:2016-09-22 12:27:10

标签: php

我需要循环中的第一个ID。

循环:

while ($row = $db->sql_fetchrow($result))
{

echo ($row['post_id']) . '<br /><br />';

}

回声结果:

817856<br /><br />817865<br /><br />817870<br /><br />817871<br /><br />817873<br /><br />817874<br /><br />

在这种情况下,我只需要数字 817856

的var_dump

var_dump($row['post_id']);

var_dump结果:

string(6) "817856" string(6) "817865" string(6) "817870" string(6) "817871" string(6) "817873" string(6) "817874"

我试过了:

reset和array_shift没有成功。谢谢

2 个答案:

答案 0 :(得分:2)

您需要使用变量来跟踪循环并在循环时获取第一个ID。默认情况下,您必须将变量指定为true并在循环内获取ID,同时将该变量设为false,以使变量始终保持为false。使用IF条件就可以了。

$flag = true;
while ($row = $db->sql_fetchrow($result)){
    if($flag === true){
        $ID = $row['post_id'];
        $flag = false;
    }
    echo ($row['post_id']) . '<br /><br />';
}

echo $ID; // 817856

如果您只需要第一个ID,那么它将是更短的版本。因为当我们不使用循环时,查询仅返回第一行。

$row = $db->sql_fetchrow($result);
echo $row['post_id']; //817856

答案 1 :(得分:0)

你可以做这样的事情

$i = 0;
$result;

while ($row = $db->sql_fetchrow($result))
{

  if ($i > 0) 
    {
        break;    
    }

  echo ($row['post_id']) . '<br /><br />';

  $result = $row['post_id'];

  i++;
}