本文实例讲述了php使用指定编码导出mysql数据到csv文件的方法。分享给大家供大家参考。具体实现方法如下:

<?php/* * PHP code to export MySQL data to CSV *  * Sends the result of a MySQL query as a CSV file for download * Easy to convert to UTF-8. */ /* * establish database connection */$conn = mysql_connect("localhost", "login", "pass") or die(mysql_error());mysql_select_db("database_name", $conn) or die(mysql_error($conn));mysql_query("SET NAMES CP1252");/*  * execute sql query    */$query = sprintf("SELECT field1,field2 FROM table_name");$result = mysql_query($query, $conn) or die(mysql_error($conn));/*  * send response headers to the browser * following headers instruct the browser to treat the data as a csv file called export.csv */header("Content-Type: text/csv; charset=cp1252");header("Content-Disposition: attachment;filename=output.csv");/*  * output header row (if atleast one row exists)  */   $row = mysql_fetch_assoc($result); if ($row) {  echocsv(array_keys($row));}/* * output data rows (if atleast one row exists) */while ($row) {  echocsv($row);  $row = mysql_fetch_assoc($result);}/* * echo the input array as csv data maintaining consistency with most CSV implementations * - uses double-quotes as enclosure when necessary * - uses double double-quotes to escape double-quotes * - uses CRLF as a line separator */function echocsv($fields){  $separator = "";  foreach ($fields as $field) {    if (preg_match("/\r|\n|,|"/", $field)) { $field = """ . str_replace(""", """", $field) . """;    }    echo $separator . $field;    $separator = ",";  }  echo "";}?>

希望本文所述对大家的php程序设计有所帮助。