javascript - 使用 PHP 导出为带有中文字符的 CSV

标签 javascript php mysql sql csv

我尝试过:

$name = iconv("utf-8", "GB18030", $value["name"]);
  • 以文本方式打开并更改编码
  • 在更改编码的同时导入 Excel

我正在使用 PHP 和 JS 来实现这一点:

我的 PHP 代码:

echo '"name";"sex";"language";"city";"province";"country";"account"';
foreach ($res_account as $value) {
echo "\n".$name.";".$value["sex"].";".$value["language"].";".$value["city"].";".$value["province"].";".$value["country"].";".$value["account"];
}

responseText 是我在 php 中回显的数据:

var myCsv = request.responseText;
window.open('data:text/csv;charset=GB18030,' + escape(myCsv));

还尝试使用 charset="utf-8"。

我总是在 csv 中得到类似:“%u6CD5%u56FD”的信息。 在 MySQL 库中,我有类似这样的内容:“代亚瑞” 但当我回应他们时就没事了。

最佳答案

您需要将字符从“%u6CD5%u56FD”转换为“\u6CD5\u56FD”并 JSON.parse() 您的结果:

myCSV = myCSV.replace(/%/g, "\\");
myCSV = JSON.parse('"'+ myCSV + '"');

关于javascript - 使用 PHP 导出为带有中文字符的 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44972372/

相关文章:

javascript - jQuery tablednd 将两行移动到一起

javascript - AngularJS orderby 通过复选框过滤

php - 匹配数据库中的值并使用 codeigniter 获取该行中的所有数据

php - Codeigniter 强制下载文件

mysql - 将表列名存储为sql server中的变量

mysql - 数据库中的外键

javascript - 他们的任何带有幻灯片的响应式灯箱是否具有适当的滑动?

php - 如何减少标题中的主页链接大小?

sql - SQL语句非常慢

javascript - 在javascript中获取设备PPI