Если вы хотите отсортировать данные и переиндексировать, чтобы удалить недостающие ключи, вы можете использовать array_multisort
.Например, если вы хотите отсортировать по row_identifier
:
$sort_by_column = 'row_identifier';
array_multisort(array_column($layout_array, $sort_by_column), $layout_array);
print_r($layout_array);
Вывод:
Array
(
[0] => Array
(
[row_identifier] => about
[row_text_title] => about
[row_link_ref] => #about
[button_styling] => off
[tab] => self
[row_show] => no
)
[1] => Array
(
[row_identifier] => benefits
[row_text_title] => benefits
[row_link_ref] => #benefits
[button_styling] => off
[tab] => self
[row_position] => 2
[original_row_position] => 2
[row_show] => yes
)
[2] => Array
(
[row_identifier] => home
[row_text_title] => home
[original_row_position] => 1
[row_position] => 1
[row_show] => yes
[row_link_ref] => https://demo.ul
[button_styling] => off
[tab] => self
)
[3] => Array
(
[row_identifier] => team
[row_text_title] => team
[row_link_ref] => #team
[button_styling] => off
[tab] => self
[row_position] => 4
[original_row_position] => 4
[row_show] => yes
)
)
Демонстрация на 3v4l.org
Обратите внимание, что вы можете сортировать только по ключу, который присутствует во всех значениях.