通过键计算数组值

时间:2019-06-01 12:40:27

标签: php arrays

我有一个数组问题,我可以计算相同的整数值吗? 我的示例数组位于底部

int = -21;

我的第一个数组

Array
(
    [580] => 13.000000
    [582] => 8.000000
    [485] => 7.000000
)

我需要的是算法

Array
(
    [580] => 13.000000+int // sum -8
    [582] => 8.000000+(-8) // 0 
    [485] => 7.000000
)

结果之后

Array
(
    [580] => 8
    [582] => 0
    [485] => 7.000000
)

1 个答案:

答案 0 :(得分:0)

如果我正确理解了这个问题:

$array = [
    580 => 13.000000,
    582 => 8.000000,
    485 => 7.000000,
];

// The initial number to sum
$int = -21;

foreach ($array as $key => $val) {
    // Add the int number to the current element.
    $array[$key] = $val + $int;

    // Now replace $int with the new sum so we'll use that
    // in the next iteration instead
    $int = $array[$key];
}

一个简短的版本是:

foreach ($array as $key => $val) {
    $int = $array[$key] = $val + $int;
}

这将为您提供:

Array
(
    [580] => -8
    [582] => 0
    [485] => 7
)

(第一个值为-8,如您在评论中所述)

like this one