Когда PHP выводит имена файлов из папки FTP производит французские символы, которые 3 символов, поэтому, когда мы var_dump:PHP выводит странный французский символ | é = строка (3)
var_dump("é");
Он показывает:
string(3)
Но фактический характер должен быть
string(2)
имена файлов вытягивают с помощью Wordpress функции
Когда это строка (3), мы не можем сделать preg_match на ней, чтобы заменить ее на стандартный символ ASCII.
Я пробовал объявлять форматирование как UTF-8, но это уже UTF-8. Также проверено
header('Content-Type: text/html; charset=iso-8859-1');
Но в результате искаженный текст.
Есть ли что-нибудь еще, что мы можем попробовать? Что это за персонаж?
Это звучит очень похоже на http://stackoverflow.com/a/1725329/ 7496329 – Andy
Убедитесь, что вы обернули имя файла в эхо с помощью htmlspecialchars - http://php.net/manual/en/function.htmlspecialchars.php – Brogan
'string (1)' является 1-байтовой строкой; UTF-8 - это набор символов __multi-byte__, поэтому 1 символ не равен 1 байт –