- сервер MongoDB; Текстовые данные в кодировке windows-1251.
- Сервер RESTHeart.
- PHP с кодировкой window-1251 делает запрос к RESTHeart.
- Текстовые данные повреждены
Чтобы получить текст «назад», я использую этот код (от utf-8 до 1251, затем от utf-8 до 1251, затем обратно к utf-8, потому что json выдает ошибку, если кодировка не utf-8):
$body = iconv('CP1251', 'UTF-8', iconv('UTF-8', 'CP1251//IGNORE', iconv('UTF-8', 'CP1251//IGNORE', $body)));
После этого объект $body содержит обычный текст, но без каких-либо символов (не специальных, вроде кириллической 'И').