【问题标题】:php unset array element while keeping numbers in order [duplicate]php取消设置数组元素,同时保持数字顺序[重复]
【发布时间】:2015-11-02 21:16:38
【问题描述】:

我提前为这个问题道歉 - 我确定它之前已经回答过,(见鬼,我已经做过了),我只是在搜索中找不到任何东西,我的大脑一片空白……

我在 PHP 中有一个数组,其中 print_r 输出:

Array
(
    [0] => VALUE
    [1] => VALUE
    [2] => VALUE
    [3] => VALUE
    [4] => VALUE
)

我使用unset($_SESSION['item'][$lineID]); 取消设置数组中的特定行,然后剩下:

Array
(
    [0] => VALUE
    [1] => VALUE
    [3] => VALUE
    [4] => VALUE
)

元素 [2] 已被移除,因此生成的数组不再按数字顺序排列

(例如 - [0][1][3][4] 而不是 [0][1][2][3])。

我在结果数组上运行什么 PHP 命令以“取出空白”并重新格式化它,使其按数字顺序从 1 到 n

【问题讨论】:

    标签: php arrays


    【解决方案1】:

    unset()之后重置数组键

    $array = array_values($array);
    

    【讨论】:

    • 该死的array_values.....就是这样。 /星期一。
    • 我推荐使用array_splice而不是unset,这样就不用array_values
    猜你喜欢
    • 2013-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-21
    • 2011-08-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多