개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.10 20:49

Generator::next 사용법에 대한 질문

목록
  • 디자인패턴마스터 오래 전 2025.06.10 20:49 인기
  • 129
    1
제가 Generator를 사용하여 반복 가능한 객체를 만들었을 때, `Generator::next` 메서드를 사용하여 요소를 추출하려고 하는데 이해가 잘 안 됩니다.

제가 작성한 코드는 다음과 같습니다.
php

function generator() {

    for ($i = 0; $i < 5; $i++) {

        yield $i;

    }

}



$gen = generator();

print_r($gen->current()); // 0

$gen->next();

print_r($gen->current()); // 1


여기서 `Generator::next` 메서드를 사용하여 요소를 추출하는 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  오래 전



    `Generator::next` 메서드를 사용하여 요소를 추출하는 방법은 다음과 같습니다.

    - `Generator::next` 메서드는 Generator 객체에서 다음 요소를 반환합니다.
    - Generator 객체는 반복 가능한 객체이므로, `next` 메서드를 호출하여 요소를 추출할 수 있습니다.
    - `next` 메서드는 Generator 객체의 내부 상태를 업데이트하여, 다음 요소를 반환합니다.
    - `current` 메서드를 사용하여 현재 요소를 반환할 수 있습니다.

    예를 들어, 다음과 같이 Generator 함수를 정의하고, `next` 메서드를 호출하여 요소를 추출할 수 있습니다.

    #hostingforum.kr
    php
    
    function generator() {
    
        for ($i = 0; $i < 5; $i++) {
    
            yield $i;
    
        }
    
    }
    
    
    
    $gen = generator();
    
    print_r($gen->current()); // 0
    
    $gen->next();
    
    print_r($gen->current()); // 1
    
    


    또한, 반복문과 함께 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    function generator() {
    
        for ($i = 0; $i < 5; $i++) {
    
            yield $i;
    
        }
    
    }
    
    
    
    $gen = generator();
    
    foreach ($gen as $value) {
    
        print_r($value);
    
    }
    
    


    이러한 예제를 통해 `Generator::next` 메서드를 사용하여 요소를 추출하는 방법을 이해할 수 있습니다.

    2025-06-10 20:50

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 37,276건 / 87 페이지

검색

게시물 검색