将MySql结果下载为CSV&特别的字符

时间:2015-08-20 16:35:07

标签: php

我有一个脚本可以将MySql表中的结果下载到CSV文件中,如此

$result = $sql2;
$num_fields = mysql_num_fields($result);
$headers = array();
for ($i = 0; $i < $num_fields; $i++) {
$headers[] = mysql_field_name($result , $i);
}
$fp = fopen('php://output', 'w');
if ($fp && $result) {
header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename="export.csv"');
header('Pragma: no-cache');
header('Expires: 0');
fputcsv($fp, $headers);
while ($row = mysql_fetch_assoc($result)) {
    fputcsv($fp, array_values($row));
}
die;
}

哪个工作正常,我遇到的问题是列的一些值包含&amp; QUOT ;.当将这些数据打印到网页时,它显示为真实的引用“但是当它下载到CSV时它打印为&amp; quote;。我试过htmlspecialchars_decode()但问题仍然存在。

任何帮助将不胜感激。

0 个答案:

没有答案