php 使用指定编码导出mysql数据到csv的简单示例

前端之家收集整理的这篇文章主要介绍了php 使用指定编码导出mysql数据到csv的简单示例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
PHP使用指定的编码导出MysqL数据到csv的代码感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!

<?PHP     
/**
 * 使用指定的编码导出MysqL数据到csv的代码
 *
 * @param 
 * @author 网: 512Pic.com                            * 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";                                                                
}  
            
/***   来自编程之家 jb51.cc(jb51.cc)   ***/

猜你在找的PHP相关文章