缺少csv中字段的第一个字符

Rag*_*123 5 php csv fgetcsv

我正在使用php中的csv导入脚本.它工作正常,除了字段开头的外来字符.

代码看起来像这样

if (($handle = fopen($filename, "r")) !== FALSE)
{
     while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) 
         $teljing[] = $data;

     fclose($handle);
}
Run Code Online (Sandbox Code Playgroud)

这是一个显示我的问题的数据示例

føroyskir stavir, "Kr. 201,50"
óvirkin ting, "Kr. 100,00"
Run Code Online (Sandbox Code Playgroud)

这将导致以下结果

array 
(
     [0] => array 
          (
                 [0] => 'føroyskir stavir',
                 [1] => 'Kr. 201,50'
          )
     [1] => array 
          (
                 [0] => 'virkin ting', <--- Should be 'óvirkin ting'
                 [1] => 'Kr. 100,00'
          )
)
Run Code Online (Sandbox Code Playgroud)

我已经在php.net的一些评论中看到了这种行为,我试图ini_set('auto_detect_line_endings',TRUE);检测行结尾.没有成功.

有谁熟悉这个问题?

编辑:

谢谢你,这个问题现在解决了.

setlocale(LC_ALL, 'en_US.UTF-8');

是解决方案.

AJ.*_*AJ. 6

PHP手册fgetcsv():

"注意:此功能会考虑区域设置.如果LANG是例如en_US.UTF-8,则此功能会读取单字节编码的文件错误."