Eksport CSV yang Cekap dalam Laravel: Pendekatan Diperkemas
Pembangun Laravel selalunya perlu mengeksport data ke fail CSV untuk pelaporan atau analisis. Artikel ini membentangkan kaedah yang cekap dan mudah untuk mencipta arahan eksport CSV Laravel, menggunakan chunking Laravel dan fungsi fputcsv
PHP untuk prestasi optimum dengan set data yang besar.
Kenapa Kaedah Ini?
Pendekatan ini menawarkan beberapa kelebihan utama:
- Kecekapan: Mekanisme chunking Laravel memproses data dalam kelompok yang boleh diurus, meminimumkan penggunaan memori.
- Skalabiliti: Mengendalikan set data yang besar tanpa masalah keletihan memori.
-
Kesederhanaan:
fputcsv
menyediakan pemformatan CSV langsung, menghapuskan keperluan untuk perpustakaan luaran.
Pelaksanaan Kod
Kod berikut menunjukkan eksport CSV ringkas:
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]); }); });
Pecahan Kod
-
$chunkSize = 500;
: Menetapkan bilangan rekod yang diproses setiap bahagian. Laraskan mengikut keperluan berdasarkan volum data dan sumber pelayan anda. -
$outputStream = fopen('php://stdout', 'wb ');
: Membuka strim binari tulis kepada output standard (stdout
). Ini membenarkan paip terus keluaran ke fail atau proses lain. -
fputcsv($outputStream, ['email', 'name']);
: Menulis baris pengepala CSV. -
User::select(['email', 'name'])->chunk($chunkSize, ...);
: Kaedahchunk
Laravel memproses data modelUser
dalam ketulan$chunkSize
rekod. Fungsi tanpa nama dalamchunk
mengendalikan setiap bahagian. -
$users->each(function ($user) use ($outputStream) { ... });
: Berulang melalui setiap pengguna dalam bongkah dan menulis e-mel dan nama ke CSV menggunakanfputcsv
.
Integrasi Perintah Artisan
Untuk mencipta perintah Artisan boleh guna semula, susun kod anda seperti berikut:
<?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) ... } }
Ini mencipta perintah Artisan php artisan export:users
untuk melaksanakan eksport.
Kesimpulan
Kaedah ini menyediakan penyelesaian yang cekap dan berskala untuk eksport CSV dalam Laravel, memanfaatkan fungsi terbina dalam untuk prestasi optimum dan kemudahan pelaksanaan. Ingat untuk melaraskan pembolehubah $chunkSize
mengikut keperluan khusus anda.
Atas ialah kandungan terperinci Membina Perintah Eksport CSV Pantas dalam Laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

URL panjang, sering berantakan dengan kata kunci dan parameter penjejakan, boleh menghalang pelawat. Skrip pemendekan URL menawarkan penyelesaian, mewujudkan pautan ringkas yang sesuai untuk media sosial dan platform lain. Skrip ini sangat berharga untuk laman web individu a

Laravel memudahkan mengendalikan data sesi sementara menggunakan kaedah flash intuitifnya. Ini sesuai untuk memaparkan mesej ringkas, makluman, atau pemberitahuan dalam permohonan anda. Data hanya berterusan untuk permintaan seterusnya secara lalai: $ permintaan-

Ini adalah bahagian kedua dan terakhir siri untuk membina aplikasi React dengan back-end Laravel. Di bahagian pertama siri ini, kami mencipta API RESTful menggunakan Laravel untuk aplikasi penyenaraian produk asas. Dalam tutorial ini, kita akan menjadi dev

Laravel menyediakan sintaks simulasi respons HTTP ringkas, memudahkan ujian interaksi HTTP. Pendekatan ini dengan ketara mengurangkan redundansi kod semasa membuat simulasi ujian anda lebih intuitif. Pelaksanaan asas menyediakan pelbagai jenis pintasan jenis tindak balas: Gunakan Illuminate \ Support \ Facades \ http; Http :: palsu ([ 'Google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

Pelanjutan URL Pelanggan PHP (CURL) adalah alat yang berkuasa untuk pemaju, membolehkan interaksi lancar dengan pelayan jauh dan API rehat. Dengan memanfaatkan libcurl, perpustakaan pemindahan fail multi-protokol yang dihormati, php curl memudahkan execu yang cekap

Adakah anda ingin memberikan penyelesaian segera, segera kepada masalah yang paling mendesak pelanggan anda? Sembang langsung membolehkan anda mempunyai perbualan masa nyata dengan pelanggan dan menyelesaikan masalah mereka dengan serta-merta. Ia membolehkan anda memberikan perkhidmatan yang lebih pantas kepada adat anda

Tinjauan Landskap PHP 2025 menyiasat trend pembangunan PHP semasa. Ia meneroka penggunaan rangka kerja, kaedah penempatan, dan cabaran, yang bertujuan memberi gambaran kepada pemaju dan perniagaan. Tinjauan ini menjangkakan pertumbuhan dalam PHP Versio moden

Dalam artikel ini, kami akan meneroka sistem pemberitahuan dalam rangka kerja web Laravel. Sistem pemberitahuan di Laravel membolehkan anda menghantar pemberitahuan kepada pengguna melalui saluran yang berbeza. Hari ini, kami akan membincangkan bagaimana anda boleh menghantar pemberitahuan ov


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)
