Определение кодировки файла

521
.
I'm the Cult of Personality...

Нужно узнать в какой кодировке содержымое файла.

mb_detect_encoding(file_get_contents('файл')) не песать, нероботает он

.
(\/)____o_O____(\/)

BoGdAn, <?php
function detect_encoding($string) {
static $list = array('utf-8', 'windows-1251');

foreach ($list as $item) {
$sample = iconv($item, $item, $string);
if (md5($sample) == md5($string))
return $item;
}
return null;
}
?>

.
I'm the Cult of Personality...

Koenig,

Notice: iconv(): Detected an illegal character in input string бла бла

Если кодировка windows-1251
.
(\/)____o_O____(\/)

BoGdAn, флаги смотрел
вот кусок из кфм
$f = trim(file_get_contents($dir));
$target_encoding = $_POST['encoding'];
$encoding = mb_detect_encoding($f, 'WINDOWS-1251, KOI8-R, UTF-8, HTML-ENTITIES');
$convert = iconv($encoding . '//TRANSLIT', $target_encoding, $f);

.
I'm the Cult of Personality...

Koenig, Не пашет. Выдает утф-8 или пустоту если кодировка другая.

.

Напиши что вообще на выходе хочешь получить. возможно и не нужно будет знать кодировку. У меня как то была задача получить и вывести из фаайла текст в utf-8 кодировке, при этом он(текст) мог там находиться в любой.

.
I'm the Cult of Personality...

Kpegumop, нужно узнать кодировку и вывести в форму для изменения на другую.
Типа: текущая utf-8 изменить на бла бла.

.
(\/)____o_O____(\/)

BoGdAn, на пхп.нет mb_detect_encoding
там все примеры пробовал? там есть вариант с перебором сигнатур, первые 2 3 байта файла

.
I'm the Cult of Personality...

Koenig, вроде все перепробовал. Гуглил 2дня толку нет. Недумал что с етим столько проблем будет

.

BoGdAn, хз. как вариант, если кодировка не определяется, можно в utf-8 перевести и все. с любой кодировки

Всего: 17