Laravel의 효율적인 CSV 내보내기: 간소화된 접근 방식
Laravel 개발자는 보고 또는 분석을 위해 데이터를 CSV 파일로 내보내야 하는 경우가 많습니다. 이 기사에서는 대규모 데이터 세트에서 최적의 성능을 위해 Laravel의 청킹 및 PHP의 fputcsv
기능을 활용하여 Laravel CSV 내보내기 명령을 생성하는 효율적이고 간단한 방법을 제시합니다.
이 방법을 사용하는 이유
이 접근 방식은 다음과 같은 몇 가지 주요 이점을 제공합니다.
- 효율성: Laravel의 청킹 메커니즘은 관리 가능한 배치로 데이터를 처리하여 메모리 소비를 최소화합니다.
- 확장성: 메모리 소모 문제 없이 대규모 데이터 세트를 처리합니다.
-
간단성:
fputcsv
은 직접적인 CSV 형식을 제공하므로 외부 라이브러리가 필요하지 않습니다.
코드 구현
다음 코드는 간결한 CSV 내보내기를 보여줍니다.
use Illuminate\Database\Eloquent\Collection; $chunkSize = 500; // Adjustable chunk size $outputStream = fopen('php://stdout', 'wb+'); // Output stream to stdout // Write CSV header row fputcsv($outputStream, ['email', 'name']); // Chunk-based data processing and export User::select(['email', 'name']) ->chunk($chunkSize, function (Collection $users) use ($outputStream) { $users->each(function ($user) use ($outputStream) { fputcsv($outputStream, [$user->email, $user->name]); }); });
코드 분석
-
$chunkSize = 500;
: 청크당 처리되는 레코드 수를 설정합니다. 데이터 볼륨과 서버 리소스에 따라 필요에 따라 조정하세요. -
$outputStream = fopen('php://stdout', 'wb ');
: 쓰기 바이너리 스트림을 표준 출력(stdout
)으로 엽니다. 이를 통해 출력을 파일이나 다른 프로세스로 직접 파이핑할 수 있습니다. -
fputcsv($outputStream, ['email', 'name']);
: CSV 헤더 행을 작성합니다. -
User::select(['email', 'name'])->chunk($chunkSize, ...);
: Laravel의chunk
메소드는User
레코드 덩어리로$chunkSize
모델 데이터를 처리합니다.chunk
내의 익명 함수가 각 청크를 처리합니다. -
$users->each(function ($user) use ($outputStream) { ... });
: 청크의 각 사용자를 반복하고fputcsv
을 사용하여 이메일과 이름을 CSV에 씁니다.
장인 지휘통합
재사용 가능한 Artisan 명령을 생성하려면 다음과 같이 코드를 구성하세요.
<?php namespace App\Console\Commands; use Illuminate\Console\Command; use Illuminate\Database\Eloquent\Collection; use App\Models\User; class ExportUsersToCsv extends Command { protected $signature = 'export:users'; protected $description = 'Export users to CSV'; public function handle() { // ... (Code from previous example) ... } }
내보내기를 실행하는 Artisan 명령php artisan export:users
이 생성됩니다.
결론
이 방법은 최적의 성능과 구현 용이성을 위해 내장된 기능을 활용하여 Laravel에서 CSV 내보내기를 위한 효율적이고 확장 가능한 솔루션을 제공합니다. 특정 요구 사항에 따라 $chunkSize
변수를 조정하는 것을 잊지 마세요.
위 내용은 Laravel에서 빠른 CSV 내보내기 명령 작성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

Laravel은 직관적 인 플래시 방법을 사용하여 임시 세션 데이터 처리를 단순화합니다. 응용 프로그램에 간단한 메시지, 경고 또는 알림을 표시하는 데 적합합니다. 데이터는 기본적으로 후속 요청에만 지속됩니다. $ 요청-

PHP 로깅은 웹 애플리케이션을 모니터링하고 디버깅하고 중요한 이벤트, 오류 및 런타임 동작을 캡처하는 데 필수적입니다. 시스템 성능에 대한 귀중한 통찰력을 제공하고 문제를 식별하며 더 빠른 문제 해결을 지원합니다.

PHP 클라이언트 URL (CURL) 확장자는 개발자를위한 강력한 도구이며 원격 서버 및 REST API와의 원활한 상호 작용을 가능하게합니다. PHP CURL은 존경받는 다중 프로모토콜 파일 전송 라이브러리 인 Libcurl을 활용하여 효율적인 execu를 용이하게합니다.

Laravel은 간결한 HTTP 응답 시뮬레이션 구문을 제공하여 HTTP 상호 작용 테스트를 단순화합니다. 이 접근법은 테스트 시뮬레이션을보다 직관적으로 만들면서 코드 중복성을 크게 줄입니다. 기본 구현은 다양한 응답 유형 단축키를 제공합니다. Illuminate \ support \ Facades \ http를 사용하십시오. http :: 가짜 ([ 'google.com'=> 'Hello World', 'github.com'=> [ 'foo'=> 'bar'], 'forge.laravel.com'=>

고객의 가장 긴급한 문제에 실시간 인스턴트 솔루션을 제공하고 싶습니까? 라이브 채팅을 통해 고객과 실시간 대화를 나누고 문제를 즉시 해결할 수 있습니다. 그것은 당신이 당신의 관습에 더 빠른 서비스를 제공 할 수 있도록합니다.

기사는 PHP 5.3에 도입 된 PHP의 LSB (Late STATIC BING)에 대해 논의하여 정적 방법의 런타임 해상도가보다 유연한 상속을 요구할 수있게한다. LSB의 실제 응용 프로그램 및 잠재적 성능

이 기사에서는 프레임 워크에 사용자 정의 기능 추가, 아키텍처 이해, 확장 지점 식별 및 통합 및 디버깅을위한 모범 사례에 중점을 둡니다.

Alipay PHP ...


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구
