无法在 codeignator 中使用 CSV 库导出阿拉伯语

问题描述 投票:0回答:1

我使用 CSV 库从数据库中导出数据。问题是阿拉伯宪章显示为

ط¯ظˆظƒظˆ ط§ط³ظˆط¯ 
.

我必须将 Unicode 更改为 utf-8。

我尝试了以下行,但没有用。

header('Content-Type: text/csv; charset=utf-8');

函数是

function exportCSV(){
$data=$this->m->excel($allocation,$category);

            $this->load->helper('csv');
            header('Content-Type: text/csv; charset=utf-8');
            query_to_csv($data, TRUE, 'Balance.csv');
}

谢谢

php mysql codeigniter-3
1个回答
0
投票

如果您将数据导出到 CSV 文件并且阿拉伯字符显示不正确,可能是因为 CSV 文件未使用 UTF-8 编码。您可以采取以下步骤来解决此问题:

  1. 设置CSV文件的编码为UTF-8:

    $data = "\xEF\xBB\xBF"; // UTF-8 物料清单 $data .= 内爆(“,”,数组(“第 1 列”,“第 2 列”,“第 3 列”))。 “ "; $data .= implode(",", array("تجرب⑩", "العربية", "UTF-8")) 。 “ ";

  2. 设置 HTTP 标头以指示内容以 UTF-8 编码: CSS

    header('Content-Type: text/csv; charset=utf-8'); header('Content-Disposition: attachment; filename="file.csv"');

在支持 UTF-8 编码的文本编辑器中打开 CSV 文件,例如 Notepad++ 或 Sublime Text。您应该会看到正确显示的阿拉伯字符。

  1. 如果您仍然遇到问题,请确保您的数据库和服务器也配置为使用 UTF-8 编码。

  2. 按照这些步骤,您的 CSV 文件应该以 UTF-8 正确编码,并且阿拉伯字符应该正确显示。

© www.soinside.com 2019 - 2024. All rights reserved.