(PHP 4, PHP 5, PHP 7, PHP 8)
array_splice — Bir dizinin belli bir bölümünü silip yerine başka şeyler koyar
girdi
dizisinin başlangıç
indisinden başlayan uzunluk
sayıda elemanını siler ve belirtildiği takdirde, bunların yerlerine yenisi
'ni yerleştirir.
Bilginize:
girdi
içindeki sayısal anahtarlar korunmaz.
Bilginize: Eğer
yenisi
bir dizi değilse(array) $yenisi
şeklinde bir tür dönüşümüne tabi tutulacaktır.yenisi
olarak bir nesne veyanull
belirttiğiniz takdirde bu durum beklenmedik sonuçlar verebilir.
girdi
Üzerinde işlem yapılacak dizi.
başlangıç
başlangıç
pozitif bir değerse silinecek kısmın başlangıcı girdi
dizisinin başlangıcından itibaren sayılır.
Negatif bir değerse girdi
dizisinin sonundan itibaren sayılır.
uzunluk
uzunluk
verilmezse, başlangıç
'tan dizi sonuna kadar herşey silinir.
Belirtilmişse ve pozitifse başlangıç
'tan dizi sonuna kadar belirtilen kadar eleman silinir.
Belirtilmişse ve negatifse başlangıç
'tan dizi sonuna kadar, dizi sonundan belirtilen sayıda eleman hariç herşey silinir.
başlangıç
'tan dizi sonuna kadar herşeyin silindiği durumda yenisi
de belirtilecekse uzunluk
için count($girdi)
ifadesini kullanın.
yenisi
yenisi
dizisi belirtilmişse silinen elemanların yerine bu dizi konur.
Eğer başlangıç
ve uzunluk
ile hiçbir şey silinmiyorsa yenisi
dizisi başlangıç
konumunda dizi elemanlarının arasına yerleştirilir.
Bilginize:
Yerleştirme sırasında
yenisi
dizisindeki anahtarlar korunmaz.
Eğer yenisi
tek bir elemandan ibaretse ve bir dizi, nesne veya null
değilse değeri array()
veya köşeli parantezlerle sarmalamak gerekli değildir.
Diziden kaldırılan elemanlardan oluşan bir dizi ile döner.
Sürüm: | Açıklama |
---|---|
8.0.0 | uzunluk artık boş olabiliyor. |
Örnek 1 - array_splice() örnekleri
<?php
$input = array("red", "green", "blue", "yellow");
array_splice($input, 2);
var_dump($input);
$input = array("red", "green", "blue", "yellow");
array_splice($input, 1, -1);
var_dump($input);
$input = array("red", "green", "blue", "yellow");
array_splice($input, 1, count($input), "orange");
var_dump($input);
$input = array("red", "green", "blue", "yellow");
array_splice($input, -1, 1, array("black", "maroon"));
var_dump($input);
$input = array("red", "green", "blue", "yellow");
array_splice($input, 3, 0, "purple");
var_dump($input);
?>
Yukarıdaki örneğin çıktısı:
array(2) { [0]=> string(3) "red" [1]=> string(5) "green" } array(2) { [0]=> string(3) "red" [1]=> string(6) "yellow" } array(2) { [0]=> string(3) "red" [1]=> string(6) "orange" } array(5) { [0]=> string(3) "red" [1]=> string(5) "green" [2]=> string(4) "blue" [3]=> string(5) "black" [4]=> string(6) "maroon" }
Örnek 2 - array_splice() ve eşdeğerlerine örnekler
Aşağıdaki deyimler eşdeğerdir:
<?php
// $input'a iki elemen ekle
array_push($input, $x, $y);
array_splice($input, count($input), 0, array($x, $y));
// $input'un son elemanını sil
array_pop($input);
array_splice($input, -1);
// $input'un ilk elemanını sil
array_shift($input);
array_splice($input, 0, 1);
// $input'un başına bir eleman ekle
array_unshift($input, $x, $y);
array_splice($input, 0, 0, array($x, $y));
// $input'un $x indisindeki değerini değiştir
$input[$x] = $y; // anahtarlarla konumların aynı olduğu durumda
array_splice($input, $x, 1, $y);
?>