Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengeksport Hasil Pertanyaan MySQL dengan Cekap ke CSV dalam PHP?

Bagaimana untuk Mengeksport Hasil Pertanyaan MySQL dengan Cekap ke CSV dalam PHP?

Patricia Arquette
Patricia Arquetteasal
2024-12-05 10:46:101024semak imbas

How to Efficiently Export MySQL Query Results to CSV in PHP?

Penukaran Pertanyaan MySQL yang Cekap kepada CSV dalam PHP

Untuk menukar pertanyaan MySQL kepada CSV dalam PHP, kaedah yang popular adalah dengan memanfaatkan SQL INTO arahan OUTFILE. Dengan pendekatan ini, anda boleh menentukan destinasi output dan pilihan pemformatan:

SELECT * INTO OUTFILE "/path/to/file.csv"
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY "\n"
FROM my_table;

Satu lagi pilihan yang cekap ialah mengambil hasil pertanyaan secara pemrograman dan membina CSV secara manual:

$select = "SELECT * FROM my_table";
$export = mysql_query($select);
$fields = mysql_num_fields($export);

$header = '';
for ($i = 0; $i < $fields; $i++) {
    $header .= mysql_field_name($export, $i) . "\t";
}

$data = '';
while ($row = mysql_fetch_row($export)) {
    $line = '';
    foreach ($row as $value) {
        $value = str_replace('"', '""', $value);
        $line .= '"' . $value . '"' . "\t";
    }
    $data .= trim($line) . "\n";
}

header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=my_file.csv");
print "$header\n$data";

Pendekatan ini membolehkan anda menyesuaikan pembatas medan dan aksara petikan agar sesuai dengan keperluan khusus anda.

Atas ialah kandungan terperinci Bagaimana untuk Mengeksport Hasil Pertanyaan MySQL dengan Cekap ke CSV dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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