【问题标题】:How to echo array values which are incremented PHP如何回显增加 PHP 的数组值
【发布时间】:2019-03-06 11:27:47
【问题描述】:

我有一个这样的数组:

$aArray = array('one' => 0, 'two' => 0, 'three' =>0);

还有一个像这样的while循环:

$x = 50;
$y = 400;

$current = current($aArray);

while ($x<$y) {
    $current++;
    $x+=50;

    if($x==$y) {
        $current = next($aArray);
    }
}

现在我想要显示具有总时间增量的数组,但我不知道如何。它是否能够在不使用循环的情况下显示它?

【问题讨论】:

  • 所以你想知道循环执行了多少次?
  • 我不明白您的预期输出是什么。是否要在整个操作结束时打印结果数组?
  • 你想统计数组形成过程中发生的增量数吗?

标签: php arrays loops increment


【解决方案1】:

您可以提取数组的键,然后根据索引运行。

考虑以下修改:

$aArray = array('one' => 0, 'two' => 0, 'three' =>0);
$keys = array_keys($aArray);

$x = 50;
$y = 400;

$i = 0;
while ($x<$y) {
    $aArray[$keys[$i]]++;
    $x+=50;

    if($x==$y) {
        $i++;
    }
}

print_r($aArray); // array('one' => 7, 'two' => 0, 'three' =>0);

如果你不想循环,你可以这样做:

$delta = $y - $x;
$cnt = intval($delta / 50);
if ($delta % 50 != 0)
    $cnt++

现在$cnt 将是 7,您可以将其设置为:$aArray["one"] = $cnt;

【讨论】:

    【解决方案2】:

    如果你想计算数组增加的数量,我已经添加了一些代码行

    $x = 50;
    $y = 400;
    $aArray = array('one' => 0, 'two' => 0, 'three' =>0);
    $countInc=0;
    
    $current = current($aArray);
    
    while ($x<$y) {
        $current++;
        $x+=50;
        $countInc++;
      
        if($x==$y) {
            $current = next($aArray);
        }
    }
    echo "Total Number of Increment from that Array: ". $countInc;

    【讨论】:

    • 我得到的输出,该数组的增量总数:7
    猜你喜欢
    • 2022-11-14
    • 2019-08-05
    • 1970-01-01
    • 2021-03-28
    • 2020-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-08
    相关资源
    最近更新 更多