Дупки, unset, count…

В PHP като unset()-неш елемент от масив, свива ли се масива или остава „дупка“?

count() – a се променя правилно, тоест, като ънсетнеш елемент – намалява с едно, пет, сто… или колкото там си ънсетнал.

В масива не остават „дупки“, демек свива се.

$a = [
    'qqq' => 111111,
    'www' => 222222,
    'eee' => 333333,
    'rrr' => 444444,
];
unset($a['eee']);
var_dump($a);

ще изведе горният масив но без третият елемент:

array(3) {
    ["qqq"] => int(111111)
    ["www"] => int(222222)
    ["rrr"] => int(444444)
}

Това важи и за натуралните масиви. Демек:

$a = [2, 4, 6, 12, 234, 6];
unset($a[3]);
var_dump($a);

ще изведе горният масив но без четвъртият елемент:

array(5) {
    [0] => int(2)
    [1] => int(4)
    [2] => int(6)
    [4] => int(234)
    [5] => int(6)
}

Вашият коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *