使用 mysqli 查询在 while 语句中添加一个简单的计数器

Adding a simple counter in a while statement with a mysqli query

我正在尝试向 PHP 中的 while 语句添加一个简单的计数器,以限制从名为 Table 的 table 中打印的列值的数量。

在这种情况下,我希望从查询中打印 10 个值:

$link = mysqli_connect("", "", ""); /
$query = "SELECT Column FROM Table";
$result=mysqli_query($link,$query);
$i==0;
while($row=mysqli_fetch_assoc($result) && $i < 10){
$e=$row['Column'];
echo $e;
$i++;
echo $i;
}

在这种情况下,我只是将 $i 值打印到 10 但是 $e 个值中的 none 个。如果我取出 && $i <10 一切正常,除了 Column 的所有值都被回显。

我想我对 while 语句中的条件做了一些可怕的错误,但似乎无法弄清楚。

试试这个:

$link = mysqli_connect("", "", ""); /
$query = "SELECT Column FROM Table LIMIT 10"; // LIMIT wil 'limit' the results to 10 rows
$result=mysqli_query($link,$query);
while($row=mysqli_fetch_assoc($result)){
$e=$row['Column'];
echo $e;
}

注意我放两颗星的位置

$link = mysqli_connect("", "", ""); /
$query = "SELECT Column FROM Table";
$result=mysqli_query($link,$query);
$i=0; ** $i==0 **;
while(($row=mysqli_fetch_assoc($result)) && ($i < 10)){ **
  $e=$row['Column'];
  echo $e;
  $i++;
  echo $i;
}

我怀疑你在运算符优先级方面有问题(你需要检查一下)。 当你有一个句子 $r= f() && $i<10 你需要验证执行顺序是什么,就好像 f() && $i 首先发生,然后你得到的东西与你的预期完全不同。这就是为什么我添加括号以确保您想要的确实发生了。
我在这里可能是错的,但不管怎样,这些括号都是很好的做法。