首页 > 解决方案 > 如何修改数组,以便我想获得一个数组,其中一些数组值的值增加了

问题描述

我遇到了一个场景,我有一个这样的数组

 Array
    (
        [24] => 24
        [25] => 25
        [26] => 26
        [27] => 27
        [28] => 28
        [29] => 29
    )

但是我想要一个结果数组,包括像这样的 last 的递增值和 first 的递减值

Array
(
    [24] => 24
    [25] => 25
    [26] => 26
    [27] => 27
    [28] => 28
    [29] => 29
    [23] => 23
    [30] => 30
)

我知道这有点奇怪。但是谁能帮我找到结果。

我发现了价值观

$f=reset($res);
$f=$f-1;

$l=end($res);
$l=$l+1;

但不知道如何推入数组

标签: phploopscodeigniterfor-loop

解决方案


使用minmax找到最低和最高值可能更安全,否则您的代码将无法在您的结果数组reset($array)上工作(输出仍然返回24,而不是23):

$min = min($array) - 1;
$max = max($array) + 1;
$array[$min] = $min;
$array[$max] = $max;
print_r($array);

输出:

大批

(
    [24] => 24
    [25] => 25
    [26] => 26
    [27] => 27
    [28] => 28
    [29] => 29
    [23] => 23
    [30] => 30
)

3v4l.org 上的演示


推荐阅读