Maison > base de données > tutoriel mysql > Comment convertir efficacement les résultats d'une requête MySQL en CSV en PHP ?

Comment convertir efficacement les résultats d'une requête MySQL en CSV en PHP ?

Linda Hamilton
Libérer: 2024-12-24 16:59:17
original
594 Les gens l'ont consulté

How to Efficiently Convert MySQL Query Results to CSV in PHP?

Code PHP pour convertir une requête MySQL en CSV

En PHP, il existe des méthodes efficaces pour convertir les résultats d'une requête MySQL au format CSV, en minimisant besoin de fichiers temporaires :

Méthode 1 : SELECT INTO OUTFILE

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

Cette commande exporte directement les résultats de la requête vers un fichier CSV. Reportez-vous à la documentation MySQL pour sa syntaxe et ses options.

Méthode 2 : Conversion manuelle

$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";
Copier après la connexion

Cette méthode implique de parcourir les résultats de la requête ligne par ligne, de formater et délivrer chaque champ sous la forme d'une valeur séparée par des virgules. La première ligne contient les noms des champs.

Ces approches fournissent des solutions portables pour exporter les résultats des requêtes MySQL au format CSV, offrant flexibilité et traitement efficace.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal