【发布时间】:2014-03-18 09:49:24
【问题描述】:
我正在尝试从表中提取数据并将其输出为文本 (RTF) 文件。问题是内容中有一些字符被破坏了。例如,如果我有西班牙语内容,则某些字符无法识别并被更改。例如,如果我有:
'实现'
单词变成:
'实现'
通过使用断点,我可以看到来自数据库的字符串是正确的,只有当它被打印出来时,波浪号才会改变。以下是我的代码:
header("Content-Type: application/rtf; charset=utf-8;");
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=".$fileName .".rtf");
header("Content-Transfer-Encoding: binary");
echo $content;
感谢您的帮助。
杰森
【问题讨论】:
-
你的数据库有什么编码?它必须与您页面的编码匹配
-
你为 rtf 使用什么库?尝试使用带有 mb_ 前缀的函数
-
安德鲁,编码和排序规则一样吗?如果是这样,我所有的表都设置为'utf8 default collation'
标签: php