我正在尝试将MySQL表导出为.celv文件,excel可以读取。 我唯一的问题是出于某种原因,excel拒绝以utf8的形式读取数据。 我已经尝试过CP1255和ISO-8859-8而没有运气使用iconv。 到目前为止,我在网上搜索过,找不到任何好的答案。
附加是导出代码:
function export_excel_csv($table)
{
$result = mysql_query("SHOW COLUMNS FROM ".$table."");
$i = 0;
if (mysql_num_rows($result) > 0) {
while ($row = mysql_fetch_assoc($result)) {
$csv_output .= $row['Field'].",";
$i++;}
}
$csv_output .= "\n";
$values = mysql_query("SELECT * FROM ".$table."");
while ($rowr = mysql_fetch_row($values)) {
for ($j=0;$j<$i;$j++) {
$text=iconv('utf-8','CP1255',$rowr[$j]);
$csv_output .= "\"".$rowr[$j]."\"".",";
}
$csv_output .= "\n";
}
$filename = $file."_".date("d-m-Y_H-i",time());
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: csv" . date("Y-m-d") . ".csv");
header( "Content-disposition: filename=".$filename.".csv");
print $csv_output;
}