Привет у меня проблема с преобразованием специальных символов в верхний регистр.
С обычной strtoupper я получаю что-то вроде DANIëL, а при применении mb_strtoupper я получаю DANI? L.
Вот код:
mb_strtoupper (rtrim ($ штук [1], «,»), ‘UTF-8’)
Имейте в виду, у меня уже есть это работает на входе:
iconv (‘UTF-8’, ‘ISO-8859-1 // TRANSLIT’, $ tr-> TD [0])
Может ли это быть причиной? Или есть что-то еще?
Типичная проблема с попыткой заглавной буквы Latin1, когда конвертер ожидает UTF-8
Обязательно проверьте ваш источник строки. Этот пример будет работать, если ваш текстовый редактор работает с кодом страницы Latin1, и не в UTF-8
$str = "daniël"; //or your rtrim($pieces[1],",")
$str = mb_convert_encoding($str,'UTF-8','Latin1');
echo mb_strtoupper($str, 'UTF-8');
//will echo DANIËL
Других решений пока нет …