我有一个这样的阵列,

$ptJson = {
    ["phoneSMS1"]=> "mobile",
    ["phoneSMS2"]=> "mobile",
    ["phoneSMS3"]=> "mobile",
    ["phoneSMS4"]=> "mobile",
    ["phoneSMS5"]=> "main"
}

我必须删除phoneSMS3,所以我使用unset来取消设置键
unset($ptJson['phoneSMS3']);

它工作得很好!
现在我想把休息键一级一级地移动,但不知道怎么移动。
找过了但没有运气。
那么,如何在phoneSMS3之后找到rest数组键呢?

最佳答案

我将从要移除的位置迭代到数组的末尾,并在每次迭代中为当前位置分配以下键:

$prefix = 'phoneSMS';
$index = 3;

while (array_key_exists($prefix . ($index + 1), $ptJson)) {
    $ptJson[$prefix . $index] = $ptJson[$prefix . ($index + 1)];
    ++$index;
}
unset($ptJson[$prefix . $index]);

10-06 05:40