라이브러리

[PHP] Generator::getReturn - 생성기의 반환 값을 가져옵니다.




Generator::getReturn() 메서드

PHP 7.4에서 Generator 클래스의 `getReturn()` 메서드가 추가되었습니다. 이 메서드는 Generator 객체에서 반환된 마지막 값을 반환합니다.

Generator::getReturn() 메서드의 사용법

Generator::getReturn() 메서드는 Generator 객체에서 반환된 마지막 값을 반환합니다. 이 메서드는 Generator 객체가 종료되거나 `yield` 키워드가 사용되지 않은 경우 `null`을 반환합니다.

예제

#hostingforum.kr
php

function myGenerator() {

    yield 1;

    yield 2;

    yield 3;

}



$generator = myGenerator();

echo $generator->current() . "
"; // 1

echo $generator->next()->current() . "
"; // 2

echo $generator->getReturn() . "
"; // 3



위 예제에서는 Generator 객체를 생성하고 `yield` 키워드를 사용하여 값을 반환합니다. `getReturn()` 메서드를 사용하여 Generator 객체에서 반환된 마지막 값을 확인할 수 있습니다.

Generator::getReturn() 메서드의 사용 예시

Generator::getReturn() 메서드는 Generator 객체에서 반환된 마지막 값을 반환할 때 유용합니다. 예를 들어, Generator 객체가 데이터를 처리하는 동안 에러가 발생했을 때, 에러 메시지를 반환할 수 있습니다.

#hostingforum.kr
php

function myGenerator() {

    try {

        yield 1;

        yield 2;

        yield 3;

    } catch (Exception $e) {

        yield "에러 발생: " . $e->getMessage();

    }

}



$generator = myGenerator();

echo $generator->current() . "
"; // 1

echo $generator->next()->current() . "
"; // 2

echo $generator->next()->current() . "
"; // 에러 발생: 에러 메시지

echo $generator->getReturn() . "
"; // 에러 발생: 에러 메시지



위 예제에서는 Generator 객체에서 에러가 발생했을 때, 에러 메시지를 반환하는 예시를 보여줍니다.

Generator::getReturn() 메서드의 제한

Generator::getReturn() 메서드는 Generator 객체가 종료되거나 `yield` 키워드가 사용되지 않은 경우 `null`을 반환합니다. 따라서 Generator 객체가 종료되거나 `yield` 키워드가 사용되지 않은 경우 `getReturn()` 메서드를 사용할 수 없습니다.

#hostingforum.kr
php

function myGenerator() {

    yield 1;

}



$generator = myGenerator();

$generator->next(); // Generator 객체가 종료되었습니다.

echo $generator->getReturn() . "
"; // null



위 예제에서는 Generator 객체가 종료된 경우 `getReturn()` 메서드를 사용할 수 없음을 보여줍니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 533 페이지

검색

게시물 검색