menu

Функция array_splice

Функцията array_splice отрязва и връща част от масив. При това отрязаната част изчезва от масива. Вместо отрязаната част могат да се вмъкват нови елементи.

На първия параметър се посочва масив за разрязване. На втория параметър се посочва от кой елемент да започне отрязването, а на третия - колко елемента да се отрежат. Третият параметър може да бъде отрицателен - в този случай отброяването ще започне от края (-1 - последен елемент, -2 - предпоследен и така нататък). Третият параметър може изобщо да не се посочва - в този случай масивът ще бъде отрязан до самия край.

На последния незадължителен параметър може да се зададе масив от елементи, които ще бъдат вмъкнати на мястото на изтритите.

Синтаксис

array_splice(array &$array, int $offset, ?int $length = null, mixed $replacement = []): array

Пример

Нека изрежем елементи от първия (има номер 0), 3 броя:

<?php $arr = ['a', 'b', 'c', 'd', 'e']; $res = array_splice($arr, 0, 3); var_dump($res); ?>

Резултат от изпълнението на кода:

['a', 'b', 'c']

При това масивът $arr ще изглежда така:

['d', 'e']

Пример

Нека изрежем елементи от втория (има номер 1), 3 броя:

<?php $arr = ['a', 'b', 'c', 'd', 'e']; $res = array_splice($arr, 1, 3); var_dump($res); ?>

Резултат от изпълнението на кода:

['b', 'c', 'd']

При това масивът $arr ще изглежда така:

['a', 'e']

Пример

Нека изрежем елементи от втория (има номер 1) до края на масива. За това третият параметър не пишем:

<?php $arr = ['a', 'b', 'c', 'd', 'e']; $res = array_splice($arr, 1); var_dump($res); ?>

Резултат от изпълнението на кода:

['b', 'c', 'd', 'e']

При това масивът $arr ще изглежда така:

['a']

Пример

Нека изрежем елементи от предпоследния, 2 броя. За това вторият параметър ще установим в -2 (позиция на предпоследния елемент):

<?php $arr = ['a', 'b', 'c', 'd', 'e']; $res = array_splice($arr, -2, 2); var_dump($res); ?>

Резултат от изпълнението на кода:

['d', 'e']

При това масивът $arr ще изглежда така:

['a', 'b', 'c']

Пример

Нека изрежем елементи от втория (има номер 1), 2 броя, а в замяна вмъкнем елементи 1, 2, 3:

<?php $arr = ['a', 'b', 'c', 'd', 'e']; $res = array_splice($arr, 1, 2, [1, 2, 3]); var_dump($res); ?>

Резултат от изпълнението на кода:

['b', 'c']

При това масивът $arr ще изглежда така:

['a', 1, 2, 3, 'd', 'e']

Пример

Нека изобщо да не изрязваме нищо, а просто да вмъкнем елементи 1, 2, 3 започвайки от позиция 1. За това третият параметър се поставя на нула:

<?php $arr = ['a', 'b', 'c', 'd', 'e']; $res = array_splice($arr, 1, 0, [1, 2, 3]); var_dump($res); ?>

Резултат от изпълнението на кода:

[]

При това масивът $arr ще изглежда така:

['a', 1, 2, 3, 'b', 'c', 'd', 'e']

Вижте също

  • функцията array_slice,
    която отрязва част от масив, без да променя при това самия масив
Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне