Heim > Datenbank > MySQL-Tutorial > Wie kann ich MySQL-Abfrageergebnisse mit PHP effizient in CSV exportieren?

Wie kann ich MySQL-Abfrageergebnisse mit PHP effizient in CSV exportieren?

Barbara Streisand
Freigeben: 2024-12-13 01:05:10
Original
739 Leute haben es durchsucht

How Can I Efficiently Export MySQL Query Results to CSV Using PHP?

Konvertieren von MySQL-Abfragen in CSV in PHP

In PHP kann der Export von Daten aus MySQL-Abfragen in CSV ohne den Einsatz von temporären Dateien effizient durchgeführt werden Dateien. Hier sind zwei effektive Methoden, um diese Aufgabe zu erfüllen:

Verwenden von MySQLs SELECT ... INTO OUTFILE:

Diese Abfrage gibt das Ergebnis direkt in eine CSV-Datei aus:

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

PHP-Code verwenden:

Dieser Code wählt die Daten aus, formatiert sie im CSV-Format und sendet sie als Antwort:

$select = "SELECT * FROM table_name";

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

$fields = mysql_num_fields ( $export );

// Get header
for ( $i = 0; $i < $fields; $i++ )
{
    $header .= mysql_field_name( $export , $i ) . "\t";
}

// Get data
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";
}

// Send response
$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";
Nach dem Login kopieren

Beide Methoden konvertieren MySQL-Abfrageergebnisse effektiv in das CSV-Format in PHP, wobei die Wahl des Ansatzes von Faktoren wie z B. Datenbankgröße und gewünschte Flexibilität.

Das obige ist der detaillierte Inhalt vonWie kann ich MySQL-Abfrageergebnisse mit PHP effizient in CSV exportieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage