PHpullh
학습 라이브러리/PHP/지연 평가로 큰 목록 처리

PHP · 함수형

지연 평가로 큰 목록 처리

큰 배열을 한 번에 메모리에 올리지 않고 generator로 지연 처리하는 예제입니다.

함수형고급generatorlazymemory

핵심 설명

큰 배열을 한 번에 메모리에 올리지 않고 generator로 지연 처리하는 예제입니다.

PHP code

<?php
function lines(int $count): Generator {
    for ($i = 1; $i <= $count; $i++) {
        yield "row-{$i}";
    }
}

foreach (lines(3) as $line) {
    echo $line . PHP_EOL;
}

학습 팁

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

주의할 점

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

자주 묻는 질문

지연 평가로 큰 목록 처리란 무엇인가요?

큰 배열을 한 번에 메모리에 올리지 않고 generator로 지연 처리하는 예제입니다.

지연 평가로 큰 목록 처리 학습 시 주의할 점은 무엇인가요?

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