php使用指定编码导出mysql数据到csv文件的方法
程序员文章站
2024-02-06 12:41:16
本文实例讲述了php使用指定编码导出mysql数据到csv文件的方法。分享给大家供大家参考。具体实现方法如下:
本文实例讲述了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 "\r\n"; } ?>
希望本文所述对大家的php程序设计有所帮助。
上一篇: 云计算应用发展推动制造业
下一篇: 大数据技术存在局限 直觉不可或缺