str_getcsv сломан, клики диакритики?

У меня такой код в файле с кодировкой UTF-8:

<?php setlocale(LC_ALL, 'cs_CZ.utf8'); //Can be commented out without effect. $input = "Štěpán,Šafránek"; $result = str_getcsv($input); echo $result[0]; //output = "těpán"; echo $result[1]; //output = "afránek"; ?> 

Обратите внимание на обрезанные строки, которые воспроизводят эхо-сигналы.

Также это работает:

 <?php setlocale(LC_ALL, 'cs_CZ.utf8'); //Can be commented out without effect. $input = "aaaŠtěpán,aaaŠafránek"; $result = str_getcsv($input); echo $result[0]; //output = "aaaŠtěpán"; echo $result[1]; //output = "aaaŠafránek"; ?> 

Поскольку входная строка является частью скрипта, не должно быть никаких проблем с кодировкой, не так ли? Язык установлен правильно, не так ли?

Так что же не так? Мое решение состоит в том, что str_getcsv () просто сломан. Любой альтернативный способ разбора CSV?

Интересно, что в Windows это прекрасно работает, но в Linux я вижу это поведение.

Связанный с этим вопрос, но упомянутые там резолюции не помогли: PHP str_getcsv удаляет umlauts