ホームページ >データベース >mysql チュートリアル >PHP を使用して MySQL データを CSV に効率的にエクスポートするにはどうすればよいですか?

PHP を使用して MySQL データを CSV に効率的にエクスポートするにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-22 15:24:15676ブラウズ

How Can I Efficiently Export MySQL Data to CSV Using PHP?

PHP で MySQL クエリを CSV に変換

MySQL データベースから CSV 形式へのデータのエクスポートは一般的なタスクです。 PHP では、これを実現するためのさまざまな方法が提供されています。中間ファイルの作成を回避する効率的なアプローチの 1 つは、SELECT * INTO OUTFILE ステートメントを使用することです。

SELECT * INTO OUTFILE "c:/mydata.csv"
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY "\n"
FROM my_table;

または、次の PHP コードを使用することもできます。

$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 (!isset($value) || $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";

両方のメソッドでデータを取得します。 MySQL データベースを保存し、一時ファイルを使用せずに直接 CSV 形式に変換します。

以上がPHP を使用して MySQL データを CSV に効率的にエクスポートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。