【问题标题】:Euro sign in excel export from PHP欧元符号从 PHP 导出 Excel
【发布时间】:2015-03-10 12:31:05
【问题描述】:

我在 php 中有一个数组,我想导出到 csv。

这工作正常,但我似乎无法在此导出中获得欧元符号 (€)。

它正在显示这个 (ℓ)。

我已经试过了:

$text = '€' . $fields['REST_WAARDE'];
$kaart_type = html_entity_decode($text, ENT_QUOTES, 'utf-8');

和:

€

$kaart_type = str_replace('€','€',$kaart_type);

也只是一个普通的:

我的标题:

    $filename = 'export_klantenkaarten.csv';
    header("Content-type: text/csv; charset=UTF-8");
    header("Content-Disposition: attachment; filename = \"$filename\"");
    header("Pragma: no-cache");
    header("Expires: 0");

有什么想法吗?

【问题讨论】:

  • HTTP 标头上的charset= 参数不会传递给 Excel,因此 Excel 必须仅根据文件名和内容来猜测编码。以我的经验,它的 CSV 导入过滤器不是很好,所以可能不会很努力,并假设像 Windows-1252 这样的单字节代码集。

标签: php html csv


【解决方案1】:

试试这个:

$text = '€: some text';
$filename = 'export_klantenkaarten.csv';
header('Content-type: text/csv; charset=UTF-8');
header("Content-Disposition: attachment; filename = \"$filename\"");
print chr(255) . chr(254) . mb_convert_encoding($text, 'UTF-16LE', 'UTF-8');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-15
    • 2018-03-15
    • 2010-11-26
    • 2013-02-26
    • 1970-01-01
    • 1970-01-01
    • 2014-11-11
    • 2012-05-14
    相关资源
    最近更新 更多