현재 위치: > 최신 기사 목록> 배열과 문자열을 다룰 때 array_slice와 substr 함수의 유사점과 차이점은 무엇입니까?

배열과 문자열을 다룰 때 array_slice와 substr 함수의 유사점과 차이점은 무엇입니까?

gitbox 2025-06-09

PHP에서 Array_SliceSubstr은 매우 일반적으로 사용되는 기능으로, 배열 및 문자열을 조작 할 때 효율적인 절단 기능을 제공합니다. 그러나이 두 기능은 각각 다른 시나리오에 적합하며 유사성과 필수 차이가 모두 있습니다. 이 기사에서는이 두 기능의 사용법을 분석하고 배열 및 문자열 처리의 유사점과 차이점을 탐구합니다.

1. array_slice 함수

Array_Slice 는 배열을 처리하는 PHP의 함수이며 배열에서 요소의 일부를 추출하는 데 사용됩니다. 기본 구문은 다음과 같습니다.

 array_slice(array $array, int $offset, int $length = NULL, bool $preserve_keys = false): array
  • $ 배열 : 보류중인 배열.

  • $ 오프셋 : 시작 위치. 음수 인 경우 계산이 배열 끝에서 시작됨을 의미합니다.

  • $ 길이 : 추출 할 요소 수를 지정합니다. 생략하면 시작 위치에서 배열 끝까지의 모든 요소가 추출된다는 것을 의미합니다.

  • $ preserve_keys : 배열의 원래 키 이름이 유지되는지 여부를 나타내는 부울 값.

예:

 $arr = [1, 2, 3, 4, 5];
$slicedArray = array_slice($arr, 2, 2);
print_r($slicedArray);

산출:

 Array
(
    [0] => 3
    [1] => 4
)

2. 기판 기능

substr은 문자열을 처리하는 데 사용되는 함수이며, 이는 문자열의 하위 문자열을 반환합니다. 기본 구문은 다음과 같습니다.

 substr(string $string, int $start, int $length = NULL): string
  • $ String : 처리 할 문자열.

  • $ 시작 : 하위 문자열의 시작 위치. 음수는 계산이 문자열 끝에서 시작 함을 나타냅니다.

  • $ 길이 : 서브 스트링의 길이. 생략하면 시작 위치에서 문자열 끝까지의 모든 문자가 추출된다는 것을 의미합니다.

예:

 $str = "Hello, world!";
$subStr = substr($str, 7, 5);
echo $subStr;

산출:

 world

3. 유사성과 차이에 대한 분석

유사성 :

  • 함수는 비슷합니다 : Array_Slicesubstr은 데이터를 추출하는 데 사용되는 함수입니다. Array_Slice는 배열에서 일부 요소를 추출하고 Substr는 문자열에서 일부 문자를 추출합니다.

  • 부정적인 값 오프셋을 지원합니다 . 두 기능 모두 배열 또는 문자열의 끝에서 추출하는 데 사용되는 음수 오프셋을 지원합니다.

차이점 :

  • 다른 행동 대상 :

    • Array_Slice는 배열을 처리하여 새 배열을 반환합니다.

    • 기판은 문자열을 처리하고 새 문자열을 반환합니다.

  • 반환 값 유형 :

    • Array_Slice는 배열을 반환합니다.

    • substr은 문자열을 반환합니다.

  • 매개 변수의 숫자와 의미의 차이 :

    • 시작 위치 외에도 Array_Slice는 추출 할 요소의 수를 지정해야하며 원래 배열의 키 이름을 유지할지 여부를 선택할 수 있습니다.

    • Substr은 주로 문자열의 시작 위치와 길이에 중점을두고 키 이름을 유지하는 옵션이 없습니다.

4. array_slicesubstr을 사용하는시기

  • Array_Slice 사용 :

    • 배열에서 서브 어레이를 추출 해야하는 경우.

    • 배열에서 일부 데이터를 자르고 배열의 원래 순서를 유지 해야하는 경우.

  • Substr 사용 :

    • 문자열에서 하위 문자열을 추출 해야하는 경우.

    • 문자열이 저장되는 방법에 대해 신경 쓰지 않고 처리해야 할 때.

5. 요약

Array_Slicesubstr은 기능이 특정 유사성을 가지지 만 각각 배열 및 문자열 작업에 사용되며 매개 변수 및 리턴 값이 다릅니다. 사용 시나리오를 이해하면 PHP 코드를보다 효율적으로 작성하는 데 도움이 될 수 있습니다.