array_slice ֆունկցիան
array_slice ֆունկցիան կտրում և վերադարձնում է
զանգվածի մի մասը: Ինքը՝ զանգվածը, չի փոխվում:
Առաջին պարամետրով նշվում է կտրման համար նախատեսված զանգվածը:
Երկրորդ պարամետրով նշվում է, թե որ տարրից սկսել կտրումը, իսկ երրորդով՝
քանի տարր կտրել: Երկրորդ պարամետրը
կարող է բացասական լինել - այս դեպքում
հաշվարկը կսկսվի վերջից (-1 - վերջին տարրը,
-2 - նախավերջին և այլն): Երրորդ պարամետրը
կարելի է ընդհանրապես չնշել - այս դեպքում
զանգվածը կկտրվի մինչև ամենավերջ:
Վերջին ընտրովի պարամետրը կարգավորում է,
արդյոք պահպանել բանալիները կտրման ժամանակ, true -
պահպանել, false (լռելյայն) - չպահպանել:
Տողային բանալիները պահպանվում են, անկախ
այս պարամետրի արժեքից:
Շարահյուսություն
array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array
Օրինակ
Եկեք կտրենք առաջին (ունի
համար 0), 3 հատ տարրեր:
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, 0, 3);
var_dump($res);
?>
Կոդի կատարման արդյունքը.
['a', 'b', 'c']
Օրինակ
Եկեք կտրենք երկրորդ (ունի
համար 1), 3 հատ տարրեր.
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, 1, 3);
var_dump($res);
?>
Կոդի կատարման արդյունքը.
['b', 'c', 'd']
Օրինակ
Եկեք կտրենք երկրորդ (ունի
համար 1) մինչև զանգվածի վերջը: Դրա համար երրորդ
պարամետրը չենք գրում.
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, 1);
var_dump($res);
?>
Կոդի կատարման արդյունքը.
['b', 'c', 'd', 'e']
Օրինակ
Եկեք կտրենք նախավերջինից,
2 հատ տարրեր: Դրա համար երկրորդ պարամետրը
սահմանենք -2 (նախավերջին տարրի
դիրքը).
<?php
$arr = ['a', 'b', 'c', 'd', 'e'];
$res = array_slice($arr, -2, 2);
var_dump($res);
?>
Կոդի կատարման արդյունքը.
['d', 'e']
Օրինակ
Լռելյայնորեն զանգվածը չի պահպանում բանալիները կտրման ժամանակ.
<?php
$arr = [1 => 'a', 2 => 'b', 3 => 'c', 4 => 'd', 5 => 'c'];
$res = array_slice($arr, 0, 3);
var_dump($res);
?>
Կոդի կատարման արդյունքը.
['a', 'b', 'c']
Օրինակ
Եկեք անենք, որ բանալիները պահպանվեն: Դրա համար վերջին պարամետրը սահմանենք true.
<?php
$arr = [1 => 'a', 2 => 'b', 3 => 'c'];
$res = array_slice($arr, 0, 3, true);
var_dump($res);
?>
Կոդի կատարման արդյունքը.
[1 => 'a', 2 => 'b', 3 => 'c']
Օրինակ
Տողային բանալիները պահպանվում են կտրման ժամանակ.
<?php
$arr = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5];
$res = array_slice($arr, 0, 3);
var_dump($res);
?>
Կոդի կատարման արդյունքը.
['a' => 1, 'b' => 2, 'c' => 3]
Տես նաև
-
array_spliceֆունկցիան,
որը կտրում է զանգվածի մի մասը՝ փոխելով դրանով ինքը՝ զանգվածը