fgetcsv () не читает арабские символы

При попытке импортировать CSV-файл арабские символы исчезают при запуске fgetcsv , но когда я печатаю вывод из fopen , арабские символы отображаются просто отлично. Странно то, что это происходит только в нашей производственной среде, а не в моей среде разработки, где fgetcsv читает арабские символы. Есть ли какие-то настройки сервера, которые не установлены правильно на производстве?

fgetcsv() делает предположения о кодировке файла на основе локали системы. Как указано в руководстве PHP:

Эта функция учитывает настройку локали. Если LANG , например, en_US.UTF-8 , файлы в однобайтовом кодировании неправильно считываются этой функцией.

Вам может потребоваться сравнить настройки локали на ваших двух машинах и либо навсегда изменить их на одном из них, либо использовать что-то вроде setlocale(LC_ALL, 'ar_AE.utf8') (второй аргумент, очевидно, будет зависеть от кодировки вашего файла) до вашего fgetcsv() .