Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menukar Tatasusunan PHP kepada Fail CSV yang Berformat Baik dengan Pengepala?

Bagaimana untuk Menukar Tatasusunan PHP kepada Fail CSV yang Berformat Baik dengan Pengepala?

Barbara Streisand
Lepaskan: 2024-10-19 18:58:30
asal
379 orang telah melayarinya

How to Convert a PHP Array to a Well-Formatted CSV File with Headers?

Penukaran Tatasusunan PHP kepada CSV: Penyelesaian Diperkemas

Menukar tatasusunan kepada fail CSV dalam PHP boleh menyusahkan. Jika anda bergelut untuk menghasilkan CSV yang diformat dengan betul, artikel ini akan memberikan penyelesaian yang lebih baik.

Masalahnya: CSV Baris Tunggal dan Tiada Pengepala

Pertimbangkan kod berikut:

<code class="php">$prods = [1, 2, 3];

foreach ($prods as $prod) {
    $sql = "SELECT * FROM products WHERE id = '$prod'";
    $result = $mysqli->query($sql);
    $info = $result->fetch_array(); 
}

// ... rest of the code</code>
Salin selepas log masuk

Kod ini mungkin menghasilkan fail CSV yang merupakan satu baris panjang dan bukannya format yang dikehendaki dengan pengepala dan pemisah baris.

Penyelesaian: Menggunakan fputcsv()

Untuk menyelesaikan isu ini, gantikan kod yang menulis pada fail CSV dengan yang berikut:

<code class="php">$output = fopen("php://output",'w') or die("Can't open php://output");
header("Content-Type:application/csv"); 
header("Content-Disposition:attachment;filename=pressurecsv.csv"); 
fputcsv($output, array('id','name','description'));
foreach($prod as $product) {
    fputcsv($output, $product);
}
fclose($output) or die("Can't close php://output");</code>
Salin selepas log masuk

Fungsi fputcsv() secara automatik mengendalikan pelarian, pembatas medan dan penghujung baris, memastikan CSV diformat dengan betul .

Nota Tambahan

  • Gunakan fopen('php://output', 'w') dan bukannya pengekodan keras nama fail untuk mencipta CSV dalam ingatan.
  • Tetapkan pengepala yang sesuai untuk muat turun CSV dalam pengepala().
  • Gunakan fputcsv() untuk menulis baris pengepala dan baris CSV yang berikutnya.
  • Tutup fail pada akhirnya dengan fclose().

Atas ialah kandungan terperinci Bagaimana untuk Menukar Tatasusunan PHP kepada Fail CSV yang Berformat Baik dengan Pengepala?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan