141 of 410 menu

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,
    배열의 일부를 잘라내면서 원본 배열을 변경합니다
한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부