PHP での MySQL クエリの CSV への効率的な変換
PHP で MySQL クエリを CSV に変換するには、SQL の INTO を利用するのが一般的な方法です。 OUTFILEコマンド。このアプローチでは、出力先と書式設定オプションを指定できます:
SELECT * INTO OUTFILE "/path/to/file.csv" FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY "\n" FROM my_table;
もう 1 つの効率的なオプションは、プログラムでクエリ結果をフェッチし、手動で CSV を構築することです:
$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";
このアプローチ特定の要件に合わせてフィールド区切り文字と引用符文字をカスタマイズできます。
以上がMySQL クエリ結果を PHP で CSV に効率的にエクスポートするには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。