배열 array_slice

(PHP 4, PHP 5, PHP 7, PHP 8)

array_slice — 배열의 조각 추출


설명

array_slice(
    array $array,
    int $offset,
    ?int $length = null,
    bool $preserve_keys = false
): array
                

array_slice()offsetlength 매개변수에 지정된 대로 배열 array의 요소 시퀀스를 반환합니다.


매개변수

array
입력 배열입니다.
offset
offset이 음수가 아닌 경우 시퀀스는 array의 해당 오프셋에서 시작됩니다.

offset이 음수이면 시퀀스는 array의 끝에서 멀리 시작됩니다.

메모: offset 매개변수는 키가 아니라 배열의 위치를 ​​나타냅니다.

length
length가 주어지고 양수이면 시퀀스는 그 만큼의 요소를 가질 것입니다.

배열이 length보다 짧으면 사용 가능한 배열 요소만 표시됩니다.

length가 주어지고 음수이면 시퀀스는 배열 끝에서 많은 요소를 중지합니다.

생략하면 시퀀스는 offset에서 array 끝까지 모든 것을 갖습니다.

preserve_keys

메모: array_slice()는 기본적으로 정수 배열 인덱스를 재정렬하고 재설정합니다. 이 동작은 preserve_keystrue로 설정하여 변경할 수 있습니다. 이 매개변수에 관계없이 문자열 키는 항상 유지됩니다.


반환 값

슬라이스를 반환합니다. 오프셋이 배열의 크기보다 크면 빈 배열이 반환됩니다.


Examples

예제 #1 array_slice() 예제

                  
<?php
$input = array("a", "b", "c", "d", "e");

$output = array_slice($input, 2);      // returns "c", "d", and "e"
$output = array_slice($input, -2, 1);  // returns "d"
$output = array_slice($input, 0, 3);   // returns "a", "b", and "c"

// note the differences in the array keys
print_r(array_slice($input, 2, -1));
print_r(array_slice($input, 2, -1, true));
?>
                  
                

위의 예는 다음을 출력합니다.

Array
(
    [0] => c
    [1] => d
)
Array
(
    [2] => c
    [3] => d
)
                

예제 #2 array_slice() 및 one-based 배열

                  
<?php
$input = array(1 => "a", "b", "c", "d", "e");
print_r(array_slice($input, 1, 2));
?>
                  
                

위의 예는 다음을 출력합니다.

Array
(
    [0] => b
    [1] => c
)
                

예제 #3 array_slice() 및 혼합 키가 있는 배열

                  
<?php
$ar = array('a'=>'apple', 'b'=>'banana', '42'=>'pear', 'd'=>'orange');
print_r(array_slice($ar, 0, 3));
print_r(array_slice($ar, 0, 3, true));
?>
                  
                

위의 예는 다음을 출력합니다.

Array
(
    [a] => apple
    [b] => banana
    [0] => pear
)
Array
(
    [a] => apple
    [b] => banana
    [42] => pear
)
                

기타