PHpullh
학습 라이브러리/PHP/제너레이터 파이프라인

PHP · 함수형

제너레이터 파이프라인

generator를 조합해 지연 평가 파이프라인을 만드는 예제입니다.

함수형중급generatorlazypipeline

핵심 설명

generator를 조합해 지연 평가 파이프라인을 만드는 예제입니다.

PHP code

<?php
function numbers(): Generator {
    yield from range(1, 5);
}

function even(Generator $source): Generator {
    foreach ($source as $value) {
        if ($value % 2 === 0) {
            yield $value;
        }
    }
}

foreach (even(numbers()) as $value) {
    echo $value . PHP_EOL;
}

학습 팁

함수형 스타일에서는 부수 효과를 줄이고 입력과 출력을 분리하는 관점으로 읽으면 훨씬 명확해집니다.

주의할 점

원본 데이터를 직접 변경하면 함수형 스타일의 장점이 사라지고 디버깅이 어려워집니다.

자주 묻는 질문

제너레이터 파이프라인란 무엇인가요?

generator를 조합해 지연 평가 파이프라인을 만드는 예제입니다.

제너레이터 파이프라인 학습 시 주의할 점은 무엇인가요?

원본 데이터를 직접 변경하면 함수형 스타일의 장점이 사라지고 디버깅이 어려워집니다.