Funksie array_splice
Die funksie array_splice sny 'n deel van 'n array af en gee dit terug.
Die afgesnyde deel verdwyn uit die array.
In die plek van die afgesnyde deel kan nuwe elemente ingevoeg word.
Die eerste parameter spesifiseer die array wat gesny moet word. Die tweede parameter spesifiseer vanaf watter element die afsnyding moet begin, en die derde - hoeveel elemente om af te sny. Die derde parameter kan negatief wees - in hierdie geval sal die telling van die einde af begin (-1 - die laaste element, -2 - die voorlaaste, ensovoorts). Die derde parameter kan heeltemal weggelaat word - in hierdie geval sal die array tot by die heel einde afgesny word.
In die laaste opsionele parameter kan 'n array van elemente gespesifiseer word wat in die plek van die verwyderde elemente ingevoeg sal word.
Sintaksis
array_splice(array &$array, int $offset, ?int $length = null, mixed $replacement = []): array
Voorbeeld
Kom ons sny elemente vanaf die eerste een (het
nommer 0), 3 stukke uit:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, 0, 3);
var_dump($res);
?>
Resultaat van die kode-uitvoering:
['a', 'b', 'c']
In hierdie geval sal die $arr array so lyk:
['d', 'e']
Voorbeeld
Kom ons sny elemente vanaf die tweede een (het
nommer 1), 3 stukke uit:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, 1, 3);
var_dump($res);
?>
Resultaat van die kode-uitvoering:
['b', 'c', 'd']
In hierdie geval sal die $arr array so lyk:
['a', 'e']
Voorbeeld
Kom ons sny elemente vanaf die tweede een (het nommer 1) tot by die einde van die array. Vir hierdie doel skryf ons nie die derde parameter nie:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, 1);
var_dump($res);
?>
Resultaat van die kode-uitvoering:
['b', 'c', 'd', 'e']
In hierdie geval sal die $arr array so lyk:
['a']
Voorbeeld
Kom ons sny elemente vanaf die voorlaaste een,
2 stukke. Vir hierdie doel stel ons die tweede parameter
in op -2 (posisie van die voorlaaste
element):
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, -2, 2);
var_dump($res);
?>
Resultaat van die kode-uitvoering:
['d', 'e']
In hierdie geval sal die $arr array so lyk:
['a', 'b', 'c']
Voorbeeld
Kom ons sny elemente vanaf die tweede een (het
nommer 1), 2 stukke uit, en in die plek daarvan voeg ons
elemente 1, 2, 3 in:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, 1, 2, [1, 2, 3]);
var_dump($res);
?>
Resultaat van die kode-uitvoering:
['b', 'c']
In hierdie geval sal die $arr array so lyk:
['a', 1, 2, 3, 'd', 'e']
Voorbeeld
Kom ons sny niks uit nie,
en voeg bloot elemente 1, 2,
3 in vanaf posisie 1. Vir
hierdie doel word die derde parameter op nul gestel:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, 1, 0, [1, 2, 3]);
var_dump($res);
?>
Resultaat van die kode-uitvoering:
[]
In hierdie geval sal die $arr array so lyk:
['a', 1, 2, 3, 'b', 'c', 'd', 'e']
Sien ook
-
die funksie
array_slice,
wat 'n deel van 'n array afsny sonder om die array self te verander