Maison > développement back-end > tutoriel php > Comment exporter les résultats d'une requête MySQL au format CSV en PHP en utilisant deux méthodes différentes ?

Comment exporter les résultats d'une requête MySQL au format CSV en PHP en utilisant deux méthodes différentes ?

Patricia Arquette
Libérer: 2024-12-21 04:54:10
original
415 Les gens l'ont consulté

How to Export MySQL Query Results as CSV in PHP Using Two Different Methods?

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

L'exportation de données d'une base de données MySQL au format CSV peut être réalisée par différentes méthodes. Voici deux approches efficaces :

Utilisation du SELECT INTO OUTFILE de MySQL

Cette méthode permet d'exporter directement les résultats d'une requête vers un fichier CSV sur le serveur :

$query = "SELECT * FROM my_table";
$csv_path = "c:/mydata.csv";
$result = mysql_query("SELECT * INTO OUTFILE '" . $csv_path . "' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\n' FROM my_table");
Copier après la connexion

Créer un CSV Manuellement

Vous pouvez également créer le fichier CSV manuellement en utilisant PHP :

$select = "SELECT * FROM table_name";
$export = mysql_query($select) or die("Sql error : " . mysql_error());

$fields = mysql_num_fields($export);

// Generate the header line with field names
for ($i = 0; $i < $fields; $i++) {
    $header .= mysql_field_name($export, $i) . "\t";
}

// Process each row of the query results
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);

// Set the HTTP headers for CSV download
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=your_desired_name.xls");
header("Pragma: no-cache");
header("Expires: 0");

// Output the CSV
print "$header\n$data";
Copier après la connexion

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