【问题标题】:Create new variable to store each result during While loop在 While 循环期间创建新变量以存储每个结果
【发布时间】:2012-04-12 21:27:32
【问题描述】:

我有一个 while 循环,它遍历 3 个结果并将这些结果显示在一个列表中。它总是是 3 个结果。

这是我当前的 PHP:

while($row = sqlsrv_fetch_array($res))
{

    echo "<li>".$row['SessionValue']."</li>";
    // prefer to store each value in its own variable

}

但是我想将每个循环中的 $row['SessionValue'] 值存储在一个新变量中。

所以……

第一个循环: $i0 = $row['SessionValue'];

第二个循环: $i1 = $row['SessionValue'];

第三个​​循环: $i2 = $row['SessionValue'];

我将如何使用 PHP 实现这一目标?

非常感谢您的任何指点。

【问题讨论】:

  • 把它放在一个数组中。顺便说一句,告诉我们你真正想要做什么(而不是如何你想要做什么它)
  • 谢谢卡罗利。对不起,这是一个好点子。下次我会尝试以这种方式接近它。你能解释一下我如何使用数组来做到这一点吗?

标签: php variables loops while-loop


【解决方案1】:
$lst_count = array();
while($row = sqlsrv_fetch_array($res))
  $lst_count[] = $row["SessionValue"];

【讨论】:

  • 不客气...(在我回答完之前,卡罗莉已经提出了这个建议)。
  • 严格来说,Niko 的答案 - 创建 3 个单独的变量 - 是您真正想要的。
【解决方案2】:

您只需要另一个递增的变量:

$count = 0;
while($row = sqlsrv_fetch_array($res))
{
    ${i.$count++} = $row['SessionValue'];
}

【讨论】:

  • 嗨尼科。恐怕这在循环中没有给我任何变量。
  • var_dump($i0);放在循环后面,会输出第一个值!
  • 谢谢你,尼科。马上试试。
  • 虽然我建议使用带有数组的解决方案,但结果会更容易处理。
  • 您的回答肯定回答了我的问题,但是你们是对的,有更好的方法可以做到这一点。感谢您在这里花费的时间和精力。
【解决方案3】:

你可以这样做有所有价值的总和:

$total = array();
while($row = sqlsrv_fetch_array($res))
{
   $total[] = $row["SessionValue"]
}  $sumAll = array_sum($total);

【讨论】:

    猜你喜欢
    • 2011-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-17
    • 1970-01-01
    • 2011-10-22
    • 1970-01-01
    • 2021-07-01
    相关资源
    最近更新 更多