(PHP 4, PHP 5, PHP 7)
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.
girdi içindeki sayısal indislerin korunacağına
dikkat edin.
Bilginize: Eğer
yenisibir dizi değilse(array) $yenisişeklinde bir tür dönüşümüne tabi tutulacaktır.yenisiolarak bir nesne 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. İpucu:
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. Yerleştirme sırasında yenisi
dizisinden değerlerin anahtarlarıyla değil tek başlarına aktarılacağını
unutmayın.
Eğer yenisi tek bir elemandan ibaretse ve bir
dizi değilse değeri array() ile dizi olarak
belirtmek gerekli değildir.
Diziden kaldırılan elemanlardan oluşan bir dizi ile döner.
Örnek 1 - array_splice() örnekleri
<?php
$input = array("red", "green", "blue", "yellow");
array_splice($input, 2);
// $input = array("red", "green")
$input = array("red", "green", "blue", "yellow");
array_splice($input, 1, -1);
// $input = array("red", "yellow")
$input = array("red", "green", "blue", "yellow");
array_splice($input, 1, count($input), "orange");
// $input = array("red", "orange")
$input = array("red", "green", "blue", "yellow");
array_splice($input, -1, 1, array("black", "maroon"));
// $input = array("red", "green", "blue", "black", "maroon")
$input = array("red", "green", "blue", "yellow");
array_splice($input, 3, 0, "purple");
// $input = array("red", "green", "blue", "purple", "yellow");
?>
Örnek 2 - array_splice() örnekleri
Aşağıdaki deyimler $input değerlerini aynı şekilde değiştirir:
<?php
array_push($input, $x, $y);
array_splice($input, count($input), 0, array($x, $y));
array_pop($input);
array_splice($input, -1);
array_shift($input);
array_splice($input, 0, 1);
array_unshift($input, $x, $y);
array_splice($input, 0, 0, array($x, $y));
$input[$x] = $y; // for arrays where key equals offset
array_splice($input, $x, 1, $y);
?>