array_slice Fonksiyonu
array_slice fonksiyonu, bir dizinin bir bölümünü
keser ve döndürür. Bu işlem sırasında orijinal dizi
değişmez. İlk parametre olarak kesilecek dizi
belirtilir. İkinci parametre ile kesme işleminin
hangi elemandan başlayacağı, üçüncü parametre
ile ise kaç eleman kesileceği belirtilir. İkinci
parametre negatif olabilir - bu durumda sayım
sondan başlar (-1 - son eleman,
-2 - sondan bir önceki eleman ve böyle devam eder). Üçüncü
parametre belirtilmeyebilir - bu durumda
dizinin sonuna kadar kesilir.
Son isteğe bağlı parametre, kesme işlemi
sırasında anahtarların korunup korunmayacağını
ayarlar, true - koru, false (varsayılan) - koruma.
String anahtarlar, bu parametrenin değerinden
bağımsız olarak her zaman korunur.
Sözdizimi
array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array
Örnek
Birinci elemandan (numara 0 olan) başlayarak,
3 adet elemanı keselim:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, 0, 3);
var_dump($res);
?>
Kodun çalıştırılmasının sonucu:
['a', 'b', 'c']
Örnek
İkinci elemandan (numara 1 olan) başlayarak,
3 adet elemanı keselim:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, 1, 3);
var_dump($res);
?>
Kodun çalıştırılmasının sonucu:
['b', 'c', 'd']
Örnek
İkinci elemandan (numara 1 olan) başlayarak
dizinin sonuna kadar keselim. Bunun için üçüncü
parametreyi yazmıyoruz:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, 1);
var_dump($res);
?>
Kodun çalıştırılmasının sonucu:
['b', 'c', 'd', 'e']
Örnek
Sondan bir önceki elemandan başlayarak,
2 adet elemanı keselim. Bunun için ikinci parametreyi
-2 olarak ayarlayalım (sondan bir önceki
elemanın konumu):
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, -2, 2);
var_dump($res);
?>
Kodun çalıştırılmasının sonucu:
['d', 'e']
Örnek
Varsayılan olarak dizi kesme işlemi sırasında anahtarları korumaz:
<?php
$arr = [1 => 'a', 2 => 'b', 3 => 'c', 4 => 'd', 5 => 'c'];
$res = array_slice($arr, 0, 3);
var_dump($res);
?>
Kodun çalıştırılmasının sonucu:
['a', 'b', 'c']
Örnek
Anahtarların korunmasını sağlayalım. Bunun için son parametreyi true olarak ayarlayalım:
<?php
$arr = [1 => 'a', 2 => 'b', 3 => 'c'];
$res = array_slice($arr, 0, 3, true);
var_dump($res);
?>
Kodun çalıştırılmasının sonucu:
[1 => 'a', 2 => 'b', 3 => 'c']
Örnek
String anahtarlar kesme işlemi sırasında korunur:
<?php
$arr = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5];
$res = array_slice($arr, 0, 3);
var_dump($res);
?>
Kodun çalıştırılmasının sonucu:
['a' => 1, 'b' => 2, 'c' => 3]
Ayrıca Bakınız
-
array_splicefonksiyonu,
bir dizinin bir bölümünü keser ve bu işlem sırasında dizinin kendisini değiştirir