Indsendt af & kategoriseret under Ikke kategoriseret.

발전기는 다른 용도가 있다, 그러나이 것은 큰 파일의 performant 독서를 위해 명백 하 게 좋다. 우리가 데이터 작업을 해야하는 경우, 발전기는 아마도 가장 좋은 방법입니다. 당신은 gumption가 있다면, 난 당신이 사용자 정의 프로토콜과 필터를 만드는 실험을 권장 합니다. stream_copy_to_stream 작업에 필터를 적용할 수 있는 경우 응용 프로그램은 음란 대용량 파일을 사용할 때도 메모리 옆에 사용 됩니다. 크기 조정-이미지 필터 또는 암호화-응용 프로그램 필터를 작성 상상해 보세요. 이것이 우리가 빈번 하 게 겪는 문제가 아니더라도, 큰 파일을 사용할 때 엉망으로 만들는 것은 쉽다. 비동기 응용 프로그램에서는 메모리 사용에 대해 주의 하지 않을 때 전체 서버를 가져오는 것은 간단 합니다. 두 번째 시나리오에서는 특히 큰 API 응답의 내용을 압축 하려는 경우를 가정해 보겠습니다. 우리는 그것이 말하는 무슨 상관 없어, 하지만 우리는 그것이 압축 된 형태로 백업 되었는지 확인 해야 합니다. 이 튜토리얼은 잘하면 몇 가지 새로운 아이디어를 소개 했다 (또는 그들에 대 한 기억을 새로 고쳐), 그래서 당신이 읽고 큰 파일을 효율적으로 작성 하는 방법에 대 한 자세한 생각할 수 있습니다. 우리가 스트림 및 발전기에 익숙해 되기 시작 하 고 file_get_contents 같은 기능을 사용 중지: 오류의 전체 범주는 우리의 응용 프로그램에서 사라집니다. 그건 좋은 일을 목표로 하는 것 같아! 우리가 만들 수 있는 작은 VPS, 또는 우리가 동등 하 게 작은 서버에 큰 파일을 읽을 필요가에 큰 프로젝트에 대 한 작곡가를 실행 하려고 할 때 우리는이 편안한 경계의 외부 단계를 할 수 있습니다 드문 시간이 있습니다.

당신이 비디오 나 정말로 큰 그림 처럼 큰 파일을 다뤄야 할 때까지 이것은 효과가 있어야 한다. readfile () 함수는 메모리에 전체 파일을 로드 하는 것을 의미 합니다,이는 동시에 서버의 공연을 죽 일 수 또는 단순히 memory_limit 설정을 초과 하 여 오류를 생성 무거운 파일이 나 여러 개의 파일이 제공. 이러한 설정을 편집할 수 있는지, 그러한 종류의 변경을 수행할 수 있지만 다른 방법이 있습니다: 파일을 분할 하 고 청크 별로 청크를 제공 합니다. 그 게 readfile_chunked () 함수는 PHP 설명서에서 찾을 수 있다: 두 시나리오에서, 우리는 큰 파일을 읽을 필요가 있습니다. 첫 번째, 우리는 데이터가 무엇 인지 알고 있어야 합니다.