0

我有一个我正在做的 SQL Server 数据库提取。

在我的程序开始时,我有:

ini_set('mssql.charset','cp1250');

我的数据库调用没有做任何特别的事情。

我只调用以下方法:

mssql_connect, mssql_select_db, mssql_query, mssql_fetch_object, 
mssql_next_result and mssql_close.

当我在屏幕上打印导出的输出时,所有字符看起来都很好。当我导出fputcsv()到 csv 文件时,我得到了大量的 <92> 和 <93> 字符(这是我使用终端读取它们时它们的外观)。当我使用 Excel 打开文件时,它们看起来像 ì、í 和 î

这导致了重大问题。你有什么想法?

4

2 回答 2

1

尝试将编码转换为 utf8

iconv('cp1250', 'utf-8', $text);

也打印这个:

var_dump(iconv_get_encoding('all'));
于 2012-05-30T16:58:14.933 回答
0

谢谢,但事实证明问题不在于编码,而在于我的 fputcsv() 调用实际上没有指定分隔符。我为 delim 选择了“\t”,一切都很完美。

于 2012-05-30T18:23:34.427 回答