Ребят, нужна помощь, кодировка пакетов Update возвращаемых в Telegram (Bot API) кодирована в UTF-8 с BOM'ом из за чего символы на русском языке отображаются адской кваказяброй а значения не пишутся в таблицу БД. Стандартные mb функции конверта utf to cp1251 (переводит) и обратно не помогли.
$message = $update['message']['text']; //уходить в обработчик ответов - работает
$txt_msg = $message; // уходить в DB - не работает
$message_id = $update['message']['message_id'];
$message_name = $update['message']['chat']['first_name'];
//CREATE to DB RedBeanPHP
$user_messages = R::dispense('usermessages');
$user_messages->chat_id = $chat_id;
$user_messages->message_id = $message_id;
$user_messages->message_txt = $txt_msg;
$id = R::store($user_messages);
mb_convert remote BOM не помогли
Проблема была в кодировке на Heroku. При на другом хосте все отлично заработало "без костылей". В общем - Если столкнетесь с абракадаброй получая update пакеты от телеграм проверьте кодировку Вашего проекта; кодировку используемую на хосте
Попробуй вызвать в начале скрипта
mb_internal_encoding("UTF-8");
а потом конвертировать
mb_convert_encoding([строка], "UTF-8", "cp1251");
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники