Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Mengeksport Keputusan Pertanyaan MySQL ke CSV dalam PHP?
Mengeksport Keputusan Pertanyaan MySQL ke CSV dalam PHP
Untuk menukar hasil pertanyaan MySQL dengan cekap kepada fail CSV dalam PHP, anda boleh menggunakan pilihan berikut:
Menggunakan SELECT * INTO OUTFILE Sintaks
Satu pendekatan ialah menggunakan sintaks SELECT * INTO OUTFILE, yang membolehkan anda mengeksport hasil terus ke fail pada pelayan. Contohnya:
SELECT * INTO OUTFILE "c:/mydata.csv" FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY "\n" FROM my_table;
Kaedah Programatik Menggunakan PHP
Sebagai alternatif, anda boleh menggunakan pendekatan program:
$select = "SELECT * FROM table_name"; $export = mysql_query ($select) or die ("Sql error : " . mysql_error()); $fields = mysql_num_fields ($export); for ($i = 0; $i < $fields; $i++) { $header .= mysql_field_name($export, $i) . "\t"; } while ($row = mysql_fetch_row($export)) { $line = ''; foreach ($row as $value) { if (empty($value)) { $value = "\t"; } else { $value = str_replace('"', '""', $value); $value = '"' . $value . '"' . "\t"; } $line .= $value; } $data .= trim($line) . "\n"; } $data = str_replace("\r", "", $data); if ($data == "") { $data = "\n(0) Records Found!\n"; } header("Content-type: application/octet-stream"); header("Content-Disposition: attachment; filename=your_desired_name.xls"); header("Pragma: no-cache"); header("Expires: 0"); print "$header\n$data";
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeksport Keputusan Pertanyaan MySQL ke CSV dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!