Вставить внутрь ассоциативного массива
"Как вставить внутрь ассоциативного массива". В случае с простым массивом нет проблем! Но вот если добавлять в середину, внутрь ассоциативного массива, то у многих возникает проблема! Давайте разбираться!
Добавляем внутрь ассоциативного массива.
- Алгоритм добавления внутрь ассоциативного массива.
- Код добавления внутрь ассоциативного массива(перед).
- Код добавления внутрь ассоциативного массива(после).
Алгоритм добавления внутрь ассоциативного массива.
Разберем алгоритм и сами массивы, с которыми будем оперировать!
Алгоритм добавления внутрь ассоциативного массива.
Алгоритм добавления внутрь ассоциативного массива до боли простой:
Для того, чтобы добавить внутрь ассоциативного массива вам нужно знать ключ ячейки, после которой вы хотите добавить внутрь массива. Для этого вам потребуется:
Разрезать ассоциативный массив по этому ключу(у вас получится две части массива).
Между ними вставить требуемое количество ячеек...
И потом всё это соединить!
Всё просто!
Первый ассоциативный массив в который мы будем вставлять еще одну ячейку:
Выведем с помощью print_r :
<?
$начальный_массив = array ("1 ячейка" => 15, "2 ячейка" => 12 , "3 ячейка" => 'слово');
print_r($начальный_массив );
?>
Array
(
[1 ячейка] => 15
[2 ячейка] => 12
[3 ячейка] => слово
)
Второй ассоциативный массив который будем вставлять - это будет просто стандартная ячейка асс.массива:
Выведем с помощью print_r :
<?
$добавляемая_ячейка = array ("новая ячейка" => 125);
print_r($добавляемая_ячейка );
?>
Array
(
[новая ячейка] => 125
)
Код добавления внутрь ассоциативного массива(перед).
Давайте уже перейдем к основному коду добавления внутрь ассоциативного массива
Как выше было сказано, что нам нужно знать... ключ массива - это будет "2 ячейка".
Разрежем по этой ячейке, для этого нам понадобится:
Узнаем все ключи нашего ассоциативного массива с помощью array_keys.
С помощью array_search находим порядковый номер данной ячейки, сразу соберем весь код:
Далее с помощью array_slice получаем первую часть массива до указанного номера ячейки и вторую часть с конца массива:
$первая_часть = array_slice($начальный_массив, 0, $номер_ячейки);
$вторая_часть = array_slice($начальный_массив, $номер_ячейки);
Я ранее уже складывал ассоциативные массивы с начала с конца - здесь поступаем аналогично!
Соберем весь код и выведем с помощью :
Код добавления в ассоциативный массив перед ячейкой.
И теперь всю эту байду теорию в виде кода добавления в ассоциативный массив перед ячейкой соберем вместе:
<?
$начальный_массив = array ("1 ячейка" => 15, "2 ячейка" => 12 , "3 ячейка" => 'слово');
$номер_ячейки = array_search('2 ячейка', array_keys($начальный_массив), true);
$первая_часть = array_slice($начальный_массив, 0, $номер_ячейки);
$вторая_часть = array_slice($начальный_массив, $номер_ячейки);
$добавляемая_ячейка = array ("новая ячейка" => 125);
$обновленный_массив = $первая_часть + $добавляемая_ячейка + $вторая_часть;
print_r($обновленный_массив );
?>
Результат добавления в ассоциативный массив перед ячейкой.
И нам осталось только и всего-то вывести данный код прямо здесь:
Array
(
[1 ячейка] => 15
[новая ячейка] => 125
[2 ячейка] => 12
[3 ячейка] => слово
)
Код добавления внутрь ассоциативного массива(после)
Предположим, что вам требуется вставить внутрь ассоциативного массива
Для того, чтобы вставить внутрь ассоциативного массива после выбранного ключа/ячейки вам потребуется:
Теория и код из предыдущего пункта и в строке №3 прибавить 1:
Код добавления новой ячейки в ассоциативный массив после ключа.
<?
$начальный_массив1 = array ("1 ячейка" => 15, "2 ячейка" => 12 , "3 ячейка" => 'слово');
$номер_ячейки1 = array_search('2 ячейка', array_keys($начальный_массив1), true) +1;
$первая_часть1 = array_slice($начальный_массив1, 0, $номер_ячейки1);
$вторая_часть1 = array_slice($начальный_массив1, $номер_ячейки1);
$добавляемая_ячейка1 = array ("новая ячейка" => 125);
$обновленный_массив1 = $первая_часть1 + $добавляемая_ячейка1 + $вторая_часть1;
print_r($обновленный_массив1 );
?>
Результат добавления новой ячейки в ассоциативный массив после ключа.
И аналогично поступим, выведем код добавления новой ячейки в ассоциативный массив после ключа прямо здесь:
Array
(
[1 ячейка] => 15
[2 ячейка] => 12
[новая ячейка] => 125
[3 ячейка] => слово
)
Свои комменты в ожидании переделки!
Когда сделаю не знаю!
Времени нет...
Иначе сообщение будет удалено, вас в бан - все просто!
Но если, сил нет как хочется высказать всё, что вы думаете об этом, пожалуйста - комменты от Vk - форма ниже: