Funksiýa array_slice
array_slice funksiýasy massiviň bölegini kesip aýyrýar we
yza gaytarýar. Şol bir wagtda massiviň özi üýtgemeýär.
Birinji parametr hökmünde kesilmeli massiw görkezilýär. Ikinji
parametr bilen haýsy elementden kesip aýyrmagyň başlanmalydygy
görkezilýär, üçünji parametr bilen bolsa näçe element
kesip aýyrmaly bolandygyny. Ikinji parametr
tert bolup bilýär - şonda
sanaw ahyryndan başlanar (-1 - iň soňky element,
-2 - soňky eň boldan öňki we ş.m.). Üçünji parametri
umuman görkezmek hökman däl - şonda
massiw soňuna çenli kesiler.
Iň soňky hökman bolmadyk parametr kesip aýyrýanda
açarlary (key) saklamaly ýa ýoklugyny düzgünleşdirýär, true -
sakla, false (deslapky ýagdaý) - saklama.
Setir açarlary bu parametriň bahasyna baglylyk ýok, özüni saklaýar.
Sintaksis
array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array
Mysal
Geliň birinji elementden (nomeri
0), 3 sanyny kesip aýyralyň:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, 0, 3);
var_dump($res);
?>
Kodyň ýerine ýetirilmegi netijesi:
['a', 'b', 'c']
Mysal
Geliň ikinji elementden (nomeri
1), 3 sanyny kesip aýyralyň:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, 1, 3);
var_dump($res);
?>
Kodyň ýerine ýetirilmegi netijesi:
['b', 'c', 'd']
Mysal
Geliň ikinji elementden (nomeri
1) massiwiň ahyryna çenli kesip aýyralyň. Munuň üçin üçünji
parametri ýazmaýarys:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, 1);
var_dump($res);
?>
Kodyň ýerine ýetirilmegi netijesi:
['b', 'c', 'd', 'e']
Mysal
Geliň soňky eň boldan öňki elementden,
2 sanyny kesip aýyralyň. Munuň üçin ikinji parametri
-2 (soňky eň boldan öňki elementiň
ýerleşişi) edeliň:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, -2, 2);
var_dump($res);
?>
Kodyň ýerine ýetirilmegi netijesi:
['d', 'e']
Mysal
Deslapky ýagdaýda massiw kesip aýyrýanda açarlary saklamaýar:
<?php
$arr = [1 => 'a', 2 => 'b', 3 => 'c', 4 => 'd', 5 => 'c'];
$res = array_slice($arr, 0, 3);
var_dump($res);
?>
Kodyň ýerine ýetirilmegi netijesi:
['a', 'b', 'c']
Mysal
Geliň açarlaryň saklanýan ýaly edeliň. Munuň üçin iň soňky parametri true edeliň:
<?php
$arr = [1 => 'a', 2 => 'b', 3 => 'c'];
$res = array_slice($arr, 0, 3, true);
var_dump($res);
?>
Kodyň ýerine ýetirilmegi netijesi:
[1 => 'a', 2 => 'b', 3 => 'c']
Mysal
Setir açarlary kesip aýyrýanda saklanylýar:
<?php
$arr = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5];
$res = array_slice($arr, 0, 3);
var_dump($res);
?>
Kodyň ýerine ýetirilmegi netijesi:
['a' => 1, 'b' => 2, 'c' => 3]
Şeýle-de görüň
-
array_splicefunksiýasyny,
ol massiviň bölegini kesip aýyrýar, şol bir wagtda massiviň özini üýtgedýär