>  기사  >  백엔드 개발  >  PHP 배열 교체 함수

PHP 배열 교체 함수

王林
王林원래의
2023-05-06 12:47:08844검색

PHP 프로그래밍 언어에서 배열은 매우 일반적이고 실용적인 데이터 유형입니다. 배열에서는 첨자를 기반으로 배열 요소에 빠르게 액세스하고 수정할 수 있습니다. 하지만 실제 프로그래밍에서는 배열의 요소를 교체해야 하는 경우가 많습니다. 이때 PHP에 내장된 배열 교체 기능은 매우 편리하고 실용적입니다.

이 글에서는 array_replace(), array_replace_recursive(), array_merge(), array_merge_recursive(), array_combine() 및 기타 함수를 포함하여 PHP의 배열 교체 함수를 자세히 소개합니다.

1. array_replace()

array_replace() 함수는 한 배열의 요소를 다른 배열의 요소로 바꾸는 데 사용됩니다. 중복된 키가 있으면 이후 값이 이전 값을 덮어씁니다. 이 함수의 구문은 다음과 같습니다.

array array_replace ( array $array1 , array $array2 [, array $... ] )

그 중 $array1은 원래 배열, $array2는 대체할 배열, $...는 여러 개의 배열을 전달할 수 있다는 의미입니다. 이 함수는 대체된 배열을 반환합니다.

다음은 샘플 코드입니다.

<?php
$array1 = array("a" => "apple", "b" => "banana", "c" => "cherry");
$array2 = array("b" => "blueberry", "c" => "coconut");
$result = array_replace($array1, $array2);
print_r($result);
?>

이 코드의 출력은 다음과 같습니다.

Array
(
    [a] => apple
    [b] => blueberry
    [c] => coconut
)

보시다시피 $array2 배열의 요소가 $array1 배열의 해당 요소를 대체했습니다.

2. array_replace_recursive()

array_replace_recursive() 함수의 사용법은 기본적으로 array_replace()와 동일하지만 배열의 요소를 재귀적으로 교체합니다. 이 함수의 구문은 다음과 같습니다.

array array_replace_recursive ( array $array1 , array $array2 [, array $... ] )

array_replace()와 달리 이 함수의 교체 작업은 재귀적으로 수행됩니다. 예를 들어 두 개의 배열이 있는 경우:

$array1 = array("a" => array("b" => "banana", "c" => "cherry"));
$array2 = array("a" => array("b" => "blueberry", "d" => "date"));

array_replace() 함수를 사용하면 결과는 다음과 같습니다.

$result = array_replace($array1, $array2);
print_r($result);

출력 결과:

Array
(
    [a] => Array
        (
            [b] => blueberry
            [c] => cherry
            [d] => date
        )

)

$array2의 요소가 성공적으로 $array2의 요소를 대체한 것을 볼 수 있습니다. $array1 , 원래 $array1에 속해 있던 "c" 요소가 삭제되었습니다. 이는 array_replace() 함수가 단순히 $array2의 요소를 $array1의 요소로 바꾸고 하위 배열을 고려하지 않기 때문입니다.

array_replace_recursive() 함수를 사용하여 이 두 배열을 교체하면 결과는 다음과 같습니다.

$result = array_replace_recursive($array1, $array2);
print_r($result);

출력 결과:

Array
(
    [a] => Array
        (
            [b] => blueberry
            [c] => cherry
            [d] => date
        )

)

보시다시피 $array1의 "c" 요소는 성공적으로 유지되고 $array2의 요소 "c"가 성공적으로 유지되었습니다. 요소 "d"도 결과 배열에 성공적으로 추가되었습니다. 이는 array_replace_recursive() 함수가 두 배열의 모든 요소를 ​​재귀적으로 유지함을 의미합니다.

3. array_merge()

array_merge() 함수는 여러 배열을 새 배열로 병합하고 중복 요소를 제거하는 데 사용됩니다. 이 함수의 구문은 다음과 같습니다.

array array_merge ( array $array1 [, array $... ] )

그 중 $array1이 첫 번째 배열이고, 여러 개의 배열을 전달할 수 있습니다. 이 함수는 새로 병합된 배열을 반환합니다.

다음은 샘플 코드입니다.

<?php
$array1 = array("a" => "apple", "b" => "banana");
$array2 = array("b" => "blueberry", "c" => "cherry");
$result = array_merge($array1, $array2);
print_r($result);
?>

이 코드의 출력은 다음과 같습니다.

Array
(
    [a] => apple
    [b] => blueberry
    [c] => cherry
)

보시다시피 이 함수는 두 배열의 요소를 새 배열로 병합하고 중복 요소를 제거합니다.

4. array_merge_recursive()

array_merge_recursive() 함수의 사용법은 배열의 요소를 재귀적으로 병합한다는 점을 제외하면 array_merge()와 유사합니다. 이 함수의 구문은 다음과 같습니다.

array array_merge_recursive ( array $array1 [, array $... ] )

array_merge()와 달리 이 함수의 병합 작업은 재귀적으로 수행됩니다. 예를 들어 두 개의 배열이 있는 경우:

$array1 = array("a" => array("b" => "banana"));
$array2 = array("a" => array("c" => "cherry"));

array_merge() 함수를 사용하여 두 배열을 병합하면 결과는 다음과 같습니다.

$result = array_merge($array1, $array2);
print_r($result);

출력 결과:

Array
(
    [a] => Array
        (
            [c] => cherry
        )

)

$array2의 요소를 볼 수 있습니다. 결과 배열에 성공적으로 병합되었지만 원래 $array1에 속했던 "b" 요소가 삭제되었습니다. 이는 array_merge() 함수가 하위 배열을 고려하지 않고 단순히 두 배열의 요소를 병합하기 때문입니다.

array_merge_recursive() 함수를 사용하여 이 두 배열을 병합하면 결과는 다음과 같습니다.

$result = array_merge_recursive($array1, $array2);
print_r($result);

출력 결과:

Array
(
    [a] => Array
        (
            [b] => banana
            [c] => cherry
        )

)

$array1 및 $array2의 요소가 결과 배열에 성공적으로 병합된 것을 볼 수 있습니다. 이는 array_merge_recursive() 함수가 두 배열의 모든 요소를 ​​재귀적으로 병합한다는 의미입니다.

5. array_combine()

array_combine() 함수는 한 배열의 키 이름을 다른 배열의 값으로 사용하여 새 배열을 생성하는 데 사용됩니다. 이 함수의 구문은 다음과 같습니다.

array array_combine ( array $keys , array $values )

그 중 $keys는 키 이름을 포함하는 배열이고, $values는 키 값을 포함하는 배열입니다. 이 함수는 $keys 배열의 키와 $values ​​배열의 키 값이 포함된 새 배열을 반환합니다.

다음은 샘플 코드입니다.

<?php
$keys = array("a", "b", "c");
$values = array("apple", "banana", "cherry");
$result = array_combine($keys, $values);
print_r($result);
?>

이 코드의 출력은 다음과 같습니다.

Array
(
    [a] => apple
    [b] => banana
    [c] => cherry
)

보시다시피 이 함수는 $keys 및 $values ​​배열의 요소를 쌍으로 연결하여 새 배열을 생성합니다.

요약

이 문서에서는 array_replace(), array_replace_recursive(), array_merge(), array_merge_recursive() 및 array_combine()을 포함하여 PHP의 배열 교체 함수를 소개합니다. 이러한 함수는 실제 프로그래밍에 매우 유용하며 배열을 빠르게 작동 및 처리하고 코드의 품질과 효율성을 향상시키는 데 도움이 될 수 있습니다.

위 내용은 PHP 배열 교체 함수의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.