현재 위치: > 최신 기사 목록> Array_Chunk 및 Array_diff와의 조합에서 배열 차이를 찾는 방법

Array_Chunk 및 Array_diff와의 조합에서 배열 차이를 찾는 방법

M66 2025-04-28

PHP에서 배열의 차이를 처리하는 것은 특히 데이터 비교를 수행 할 때 일반적인 작업입니다. Array_ChunkArray_diff 는 배열의 차이를 효율적으로 찾는 데 도움이되는 두 가지 매우 실용적인 기능입니다. 이 기사는이 두 기능을 소개하고 빠른 배열 차이 조회를 구현하는 방법을 보여줍니다.

1. array_chunk 함수 소개

Array_Chunk 함수는 큰 배열을 여러 개의 작은 배열로 분할하는 데 사용됩니다. 두 가지 매개 변수를받습니다.

  • 원래 배열;

  • 각 분할 배열에 포함 된 요소 수에 포함됩니다.

이런 식으로 큰 배열을 여러 개의 작은 배열로 나눌 수 있습니다. 다량의 데이터를 처리 할 때 블록 처리는 때때로 성능이 향상됩니다.

 <?php
$array = range(1, 10);  // 컨테이너를 만듭니다 1 도착하다 10 배열
$chunkedArray = array_chunk($array, 3);  // 배열을 각각에 넣으십시오 3 요소를 한 조각으로 나눕니다
print_r($chunkedArray);
?>

출력 결과 :

 Array
(
    [0] => Array ( [0] => 1 [1] => 2 [2] => 3 )
    [1] => Array ( [0] => 4 [1] => 5 [2] => 6 )
    [2] => Array ( [0] => 7 [1] => 8 [2] => 9 )
    [3] => Array ( [0] => 10 )
)

2. array_diff 함수 소개

Array_Diff 함수는 둘 이상의 배열을 비교하고 차이를 포함하는 배열을 반환하는 데 사용됩니다. 특히, 다른 배열과 다른 원래 배열에서 요소를 반환합니다.

 <?php
$array1 = [1, 2, 3, 4, 5];
$array2 = [4, 5, 6, 7];
$diff = array_diff($array1, $array2);  // 찾다 $array1 그리고 $array2 차이
print_r($diff);
?>

출력 결과 :

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

위의 예에서 Array_diff는 $ array1$ array2를 비교하고 $ array1 에서 요소를 반환하지만 $ array2 는 아닙니다.

3. Array_ChunkArray_diff 를 결합하여 배열 차이를 찾습니다

이제이 두 기능을 결합하여 배열 간의 차이를 효율적으로 찾을 수 있습니다. 예를 들어, 두 개의 큰 배열이 있다고 가정하면 먼저 블록으로 분할 한 다음 차별적 비교를 개별적으로 수행 할 수 있습니다.

 <?php
$array1 = range(1, 20);  // a 1 도착하다 20 배열
$array2 = range(10, 30);  // a 10 도착하다 30 배열

// 각각 두 개의 배열을 넣습니다 5 요소는 조각으로 나뉩니다
$chunkedArray1 = array_chunk($array1, 5);
$chunkedArray2 = array_chunk($array2, 5);

// 找出每个块之间차이
foreach ($chunkedArray1 as $chunk1) {
    foreach ($chunkedArray2 as $chunk2) {
        $diff = array_diff($chunk1, $chunk2);  // 찾다每个分块之间차이
        if (!empty($diff)) {
            echo "차이: \n";
            print_r($diff);
        }
    }
}
?>

출력은 다음과 유사 할 수 있습니다.

 차이:
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)
차이:
Array
(
    [0] => 6
    [1] => 7
    [2] => 8
    [3] => 9
)

4. 실제 응용 프로그램 시나리오

Array_ChunkArray_diff 함수를 결합하면 몇 가지 실제 문제를 효과적으로 처리 할 수 ​​있습니다. 예를 들어, 빅 데이터 처리에서는 각 데이터 조각과 다른 데이터의 차이점을 찾기 위해 블록의 데이터를 비교해야합니다. 블록 처리를 통해 메모리 사용이 더 효율적 일 수 있으며 한 번에 너무 많은 데이터를로드하지 않도록합니다.

요약

이 기사에서는 배열 간의 차이를 효율적으로 찾기 위해 PHP의 array_chunkarray_diff 함수를 사용하는 방법을 소개합니다. Array_chunk는 큰 배열을 작은 조각으로 나누어 더 나은 처리를 도와줍니다. Array_diff를 사용하면 두 배열의 차이점을 찾을 수 있습니다. 이 두 기능을 결합하여 빅 데이터를 처리 할 때 성능과 코드 로직을 단순화합니다.