Fungsi array_splice
Fungsi array_splice memotong dan mengembalikan
sebahagian array. Bahagian yang dipotong akan
hilang dari array. Sebagai ganti bahagian yang dipotong,
elemen baru boleh dimasukkan.
Parameter pertama menentukan array yang akan dipotong. Parameter kedua menentukan dari elemen mana untuk memulakan pemotongan, dan parameter ketiga - berapa banyak elemen yang akan dipotong. Parameter ketiga boleh menjadi negatif - dalam kes ini kiraan akan bermula dari akhir (-1 - elemen terakhir, -2 - kedua terakhir dan seterusnya). Parameter ketiga boleh ditinggalkan sama sekali - dalam kes ini array akan dipotong sehingga ke akhir.
Dalam parameter pilihan terakhir, anda boleh menentukan array elemen yang akan dimasukkan menggantikan yang dipadam.
Sintaks
array_splice(array &$array, int $offset, ?int $length = null, mixed $replacement = []): array
Contoh
Mari potong elemen dari yang pertama (mempunyai
nombor 0), 3 keping:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, 0, 3);
var_dump($res);
?>
Keputusan pelaksanaan kod:
['a', 'b', 'c']
Manakala array $arr akan kelihatan seperti ini:
['d', 'e']
Contoh
Mari potong elemen dari yang kedua (mempunyai
nombor 1), 3 keping:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, 1, 3);
var_dump($res);
?>
Keputusan pelaksanaan kod:
['b', 'c', 'd']
Manakala array $arr akan kelihatan seperti ini:
['a', 'e']
Contoh
Mari potong elemen dari yang kedua (mempunyai nombor 1) hingga akhir array. Untuk ini, parameter ketiga tidak ditulis:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, 1);
var_dump($res);
?>
Keputusan pelaksanaan kod:
['b', 'c', 'd', 'e']
Manakala array $arr akan kelihatan seperti ini:
['a']
Contoh
Mari potong elemen dari kedua terakhir,
2 keping. Untuk ini, parameter kedua
ditetapkan kepada -2 (kedudukan elemen
kedua terakhir):
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, -2, 2);
var_dump($res);
?>
Keputusan pelaksanaan kod:
['d', 'e']
Manakala array $arr akan kelihatan seperti ini:
['a', 'b', 'c']
Contoh
Mari potong elemen dari yang kedua (mempunyai
nombor 1), 2 keping, dan sebagai ganti masukkan
elemen 1, 2, 3:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, 1, 2, [1, 2, 3]);
var_dump($res);
?>
Keputusan pelaksanaan kod:
['b', 'c']
Manakala array $arr akan kelihatan seperti ini:
['a', 1, 2, 3, 'd', 'e']
Contoh
Mari kita tidak memotong apa-apa sama sekali,
tetapi hanya masukkan elemen 1, 2,
3 bermula dari kedudukan 1. Untuk
ini, parameter ketiga ditetapkan kepada sifar:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_splice($arr, 1, 0, [1, 2, 3]);
var_dump($res);
?>
Keputusan pelaksanaan kod:
[]
Manakala array $arr akan kelihatan seperti ini:
['a', 1, 2, 3, 'b', 'c', 'd', 'e']
Lihat juga
-
fungsi
array_slice,
yang memotong sebahagian array tanpa mengubah array itu sendiri