$p2 = array_filter($p);
var_dump($p2);
У меня есть массив $ p, который имеет ''
ценности. Я удалил их, используя array_filter()
функция. Но я также хочу переупорядочить / сбросить индексы.
$p
содержимое массива
0 => string '' (length=0)
1 => string '' (length=0)
2 => string '' (length=0)
3 => string '' (length=0)
4 => string '' (length=0)
5 => string '' (length=0)
6 => string '' (length=0)
7 => string '' (length=0)
8 => string '123' (length=3)
9 => string '20130' (length=5)
10 => string '' (length=0)
После фильтрации новый массив выглядит следующим образом:
$p2
содержимое массива
8 => string '123' (length=3)
9 => string '20130' (length=5)
я хочу $p2
0 => string '123' (length=3)
1 => string '20130' (length=5)
Перенос элементов в новый массив был бы решением. Я пойду с этим путем, если нет более быстрого метода.
Вам нужно использовать array_values ():
$p2 = array_values($p2);
или в вашем случае вы можете сделать оба сразу:
$p = array_values(array_filter($p));
который сохранит то же имя массива и фильтр И переиндексирует массив сразу
Других решений пока нет …