Функција 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,
која отсекува дел од низа, без да ја менува притоа самата низа