라이브러리

[PHP] ArrayIterator::getArrayCopy - 배열 복사 가져오기




ArrayIterator::getArrayCopy


PHP의 `ArrayIterator` 클래스는 이터레이터 인터페이스를 구현한 클래스로, 배열을 이터레이션할 수 있도록 해줍니다. `getArrayCopy` 메서드는 이터레이터의 현재 위치를 기준으로 배열의 복사본을 반환합니다.

# getArrayCopy 메서드의 사용법


`getArrayCopy` 메서드는 `ArrayIterator` 인스턴스에 호출할 수 있습니다. 이 메서드는 현재 이터레이터의 위치를 기준으로 배열의 복사본을 반환합니다. 만약 이터레이터가 배열의 끝까지 이터레이션한 경우, 이 메서드는 전체 배열의 복사본을 반환합니다.

# 예제


#hostingforum.kr
php

// 배열 생성

$array = [

    'apple' => 1,

    'banana' => 2,

    'cherry' => 3

];



// ArrayIterator 인스턴스 생성

$iterator = new ArrayIterator($array);



// getArrayCopy 메서드 호출

$copy = $iterator->getArrayCopy();



// 결과 출력

print_r($copy);



이 예제에서는 `ArrayIterator` 인스턴스를 생성하고 `getArrayCopy` 메서드를 호출하여 배열의 복사본을 얻습니다. 결과는 다음과 같습니다.

#hostingforum.kr
php

Array

(

    [apple] => 1

    [banana] => 2

    [cherry] => 3

)



# 이터레이션 후 getArrayCopy 메서드 호출


#hostingforum.kr
php

// 배열 생성

$array = [

    'apple' => 1,

    'banana' => 2,

    'cherry' => 3

];



// ArrayIterator 인스턴스 생성

$iterator = new ArrayIterator($array);



// 이터레이션

while ($iterator->valid()) {

    echo $iterator->current() . "
";

    $iterator->next();

}



// getArrayCopy 메서드 호출

$copy = $iterator->getArrayCopy();



// 결과 출력

print_r($copy);



이 예제에서는 `ArrayIterator` 인스턴스를 생성하고 이터레이션을 수행합니다. 이터레이션 후 `getArrayCopy` 메서드를 호출하여 배열의 복사본을 얻습니다. 결과는 다음과 같습니다.

#hostingforum.kr
php

Array

(

    [apple] => 1

    [banana] => 2

    [cherry] => 3

)



# getArrayCopy 메서드의 사용 예시


`getArrayCopy` 메서드는 배열의 복사본을 얻는 데 사용할 수 있습니다. 예를 들어, 배열의 요소를 수정하고 싶지 않은 경우, `getArrayCopy` 메서드를 사용하여 배열의 복사본을 얻은 후에 수정할 수 있습니다.

#hostingforum.kr
php

// 배열 생성

$array = [

    'apple' => 1,

    'banana' => 2,

    'cherry' => 3

];



// ArrayIterator 인스턴스 생성

$iterator = new ArrayIterator($array);



// getArrayCopy 메서드 호출

$copy = $iterator->getArrayCopy();



// 배열의 요소 수정

$copy['apple'] = 10;



// 결과 출력

print_r($array);



이 예제에서는 `getArrayCopy` 메서드를 사용하여 배열의 복사본을 얻은 후에 배열의 요소를 수정합니다. 결과는 다음과 같습니다.

#hostingforum.kr
php

Array

(

    [apple] => 1

    [banana] => 2

    [cherry] => 3

)



배열의 요소는 수정되지 않았습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 77건 / 2 페이지

검색

게시물 검색