Я попробовал следующее, но это не сработает.
$index = 2; $collection->put($index, $item4);
Например, если $ collection выглядит так:
$collection = [$item1, $item2, $item3];
Я бы хотел в итоге:
$collection = [$item1, $item2, $item4, $item3];
Самый простой способ, вероятно, состоял бы в его объединении, например:
$collection->splice(2, 0, [$item4]);
Коллекции обычно поддерживают ту же функциональность, что и обычные массивы PHP. В этом случае функция array_splice () используется за кулисами.
Установив второй параметр равным 0, вы по существу говорите PHP, чтобы «перейти к индексу 2 в массиве, а затем удалить 0 элементов, а затем вставить этот элемент, который я вам предоставил».
Чтобы немного разобраться с ответом Джоэля:
splice
изменяет исходную коллекцию и возвращает извлеченные элементы Затем, чтобы добавить $item
в индекс $index
:
$collection->splice($index, 0, [$item]);
или вообще:
$elements = $collection->splice($index, $number, [$item1, $item2, ...]);
где $number
– количество элементов, которые мы хотим извлечь (и удалить) из оригинальной коллекции.