Home >Database >Mysql Tutorial >How Can I Efficiently Convert MySQL Query Results to CSV in PHP?
Converting MySQL query results into CSV format is a common task in data analysis. In PHP, there are several efficient approaches to achieve this.
Method 1: Using SELECT * INTO OUTFILE
This method utilizes MySQL's built-in SELECT * INTO OUTFILE command. It allows you to directly write the query results to a CSV file.
SELECT * INTO OUTFILE "c:/mydata.csv" FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY "\n" FROM my_table;
Method 2: Iterating over Query Results
Another efficient approach is to loop through the query results and manually build the CSV string.
$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"; }
Both methods efficiently convert MySQL query results to CSV format in PHP, enabling you to export and analyze data conveniently.
The above is the detailed content of How Can I Efficiently Convert MySQL Query Results to CSV in PHP?. For more information, please follow other related articles on the PHP Chinese website!