Maison >développement back-end >tutoriel php >Comment puis-je exporter les résultats d'une requête MySQL au format CSV en PHP ?

Comment puis-je exporter les résultats d'une requête MySQL au format CSV en PHP ?

DDD
DDDoriginal
2024-12-08 22:16:19609parcourir

How Can I Export MySQL Query Results to CSV in PHP?

Exportation des résultats de requête MySQL vers CSV en PHP

Pour convertir efficacement un résultat de requête MySQL en fichier CSV en PHP, vous pouvez utiliser l'outil options suivantes :

Utilisation du SELECT * INTO OUTFILE Syntaxe

Une approche consiste à utiliser la syntaxe SELECT * INTO OUTFILE, qui vous permet d'exporter les résultats directement dans un fichier sur le serveur. Par exemple :

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

Méthode programmatique utilisant PHP

Vous pouvez également utiliser une approche programmatique :

$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";

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn