Я работаю над сценарием импорта CSV в PHP. Работает нормально, за исключением иностранных символов в начале поля.
код выглядит так
if (($handle = fopen($filename, "r")) !== FALSE)
{
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE)
$teljing[] = $data;
fclose($handle);
}
Вот пример данных, показывающих мою проблему
føroyskir stavir, "Kr. 201,50"
óvirkin ting, "Kr. 100,00"
Это приведет к следующему
array
(
[0] => array
(
[0] => 'føroyskir stavir',
[1] => 'Kr. 201,50'
)
[1] => array
(
[0] => 'virkin ting', <--- Should be 'óvirkin ting'
[1] => 'Kr. 100,00'
)
)
Я видел это поведение, задокументированное в некоторых комментариях на php.net, и я пытался ini_set('auto_detect_line_endings',TRUE);
обнаружить окончания строк. Безуспешно.
Кто-нибудь знаком с этой проблемой?
Редактировать:
Спасибо, AJ, теперь эта проблема решена.
setlocale(LC_ALL, 'en_US.UTF-8');
Было решение.