Я получаю разные результаты в php при использовании iconv vs mb_convert_encoding при попытке конвертировать UTF-8 в UTF-16.
echo iconv('UTF-8', 'UTF-16', 'test'); // ��test
echo mb_convert_encoding('test', 'UTF-16', 'UTF-8'); // test
Обратите внимание на два символа в начале начала вывода iconv ().
Любые мысли о том, почему mb_convert_encoding не делает то же самое?
Благодарю.
iconv добавляет BOM в начале выходной строки. Таким образом, для преобразования строки, вы, вероятно, хотите использовать mb_convert_encoding, iconv может быть более полезным для файлов.
iconv
mb_convert_encoding
Других решений пока нет …