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!