- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Доброго времени суток.
В общем, сразу приведу пример кода, а дальше уже распишу, что да как:
Среда работы:
1) OS WIN XP Pro
2) PHP 5.2.4 (полная стандартная комплектация всех библиотек)
3) DENWER_3
Задача:
Перекодировать исходный файл in.php в кодировку utf-8, автоматически определив исходную кодировку файла, и сохранить результат в файл out.php
Описываю проблему:
Значит изначальный файл in.php находиться в кодировку windows-1251, Notepad++ и PHP Expert Editor определяют кодировку как ANSI.
При конвертации функцией mb_convert_encoding() с параметром 'auto' в качестве исходной кодировке, кодировка так и остается ANSI, причем все кириллические символы из документа пропадают.
Если указать явственно начальную кодировку в виде 'windows-1251', то конвертация проходит, кодировка файла изменяется при этом:
Notepad++ пишет что кодировка ANSI as UTF-8 (то есть как я понял UTF-8 без BOM)
HP Expert Editor пишет что кодировка просто UTF-8
При этом все кириллические символы сохраняются на своих местах. То есть все ок.
Что вообще за дурь блин происходит?
Почему так?
Как это можно реализовать?
оно точно по-моиму не может определить исходную кодировку...
Как вариант функцией mb_check_encoding проверять на совпадение ряд кодировок.