@sidorchik

Как преобразовать текст из кодировки Windows-1252 в UTF-8?

Не работает:
$metro = 'Ìåòðî Ïëàíåðíàÿ 474 ì';
$metro = iconv('CP1252', 'UTF-8', $metro);

Так тоже:
$metro = 'Ìåòðî Ïëàíåðíàÿ 474 ì';
$metro = iconv('CP1252', 'CP1251', $metro);
$metro = iconv('CP1251', 'UTF-8', $metro);
  • Вопрос задан
  • 2387 просмотров
Решения вопроса 2
DevMan
@DevMan
вы делаете ту же ошибку, что и в предыдущих вопросах по парсингу: работаете с уже интерпретированными данными вместо сырых.
когда вы в файле пишите $metro = 'Ìåòðî Ïëàíåðíàÿ 474 ì'; строка приобретает кодировку этого файла, а не исходную, соответственно, любые камлания по конвертации лишены всякого смысла.
Ответ написан
Комментировать
@krypt3r
Для быстрого фикса
$metro = 'Ìåòðî Ïëàíåðíàÿ 474 ì';
$metro = iconv('UTF-8', 'CP1252', $metro);
$metro = iconv('CP1251', 'UTF-8', $metro);
var_dump($metro);

string(36) "Метро Планерная 474 м"
Однако вам нужно искать проблему, а не рисовать костыли.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
profesor08
@profesor08 Куратор тега PHP
Пересохрани все свои файлы в кодировку UTF-8. Документу укажи кодировку UTF-8. Вот после этих действий, ты можешь начинать играться с конвертацией кодировок. mb_detect_encoding поможет узнать в какой кодировке получившийся текст, если вдруг что-то пошло не так.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
24 апр. 2024, в 19:18
50000 руб./за проект
24 апр. 2024, в 19:05
15000 руб./за проект
24 апр. 2024, в 18:39
80000 руб./за проект