Есть специальный сайт, авторизируюсь по спец ссылке, где передаются логин и хэш. Если перейти по ссылке через браузер, то нормально сайт открывается, авторизация проходит. Если сделать это через curl, то открывается страница с непонятной кодировкой.
Общий случай - для начала
curl_setopt($ch, CURLOPT_ENCODING ,"");
на всякий случай, чтобы не вернулся закодированный ответ, очень похоже на gzip.
Далее, к примеру если твой проект в UTF-8
$body = curl_exec($ch);
$body = iconv('кодировка-источника', 'UTF-8', $body);
Если нужно автоматическое определение кодировки источника - поможет объект DOMDocument .
Чтобы понять что у тебя конкретно не так - нужны заголовки, которые отдал источник при твоём запросе. Включи заголовки в вывод, и прикрепи к вопросу:
curl_setopt($ch, CURLOPT_HEADER, true);
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники