Упражнения с массивами PHP: вставка нового элемента в массив в любую позицию
Вставка нового элемента в массив в любую позицию
Напишите сценарий PHP, который вставляет новый элемент в массив в любую позицию.
Исходный массив:
После вставки '$' массив будет:
Пример
Попробуй сам »<?php
$original = array( '1','2','3','4','5' );
echo 'Оригинальный массив: '."\n";
foreach ($original as $x)
{echo "$x ";}
$inserted = '$';
array_splice( $original, 3, 0, $inserted );
echo " \n После вставки '$' массив будет: "."\n";
foreach ($original as $x)
{echo "$x ";}
echo "\n"
?>
array_splice — удаляет часть массива и заменяет её элементом replacement
Синтаксис
array array_splice ( array &$input , int $offset [, int $length [, mixed $replacement = array() ]] )
Удаляет length элементов, расположенных
на расстоянии offset из массива
input, и заменяет их элементами
массива replacement, если он передан в качестве параметра.
Обратите внимание, что числовые ключи в массиве input
не сохраняются.
Список параметров
input-
Входной массив.
-
offset -
Если параметр
offsetположителен, будут удалены элементы, находящиеся на расстоянии offset от началаinput. Еслиoffsetотрицателен, будут удалены элементы, находящиеся на расстоянии offset от концаinput. -
length -
Если параметр
lengthопущен, будут удалены все элементы начиная с позицииoffsetи до конца массива. Еслиlengthуказан и он положителен, то будет удалено именно столько элементов. Если же параметрlengthотрицателен, то конец удаляемой части элементов будет отстоять на это количество от конца массива. Совет: для того, чтобы удалить все элементы массива, начиная с позицииoffsetдо конца массива, в то время как указан параметрreplacement, используйте count($input) в качестве параметраlength. -
replacement -
Если передан массив
replacementв качестве аргумента, тогда удалённые элементы будут заменены элементами этого массива.Если параметры
offsetиlengthтаковы, что из исходного массива не будет ничего удалено, тогда элементы массиваreplacementбудут вставлены на позициюoffset. Обратите внимание, что ключи массиваreplacementне сохраняются.Совет: если
replacementявляется просто одним элементом, нет необходимости заключать его в array(), если только этот элемент сам не является массивом, объектом илиNULL.

Комментарии
<code>, несколько строчек кода — в теги<pre><code>...ваш код...</code></pre>.