Форум: "Прочее";
Текущий архив: 2010.02.21;
Скачать: [xml.tar.bz2];
ВнизКазахский в PHP Найти похожие ветки
← →
Polkin © (2009-12-11 10:18) [0]Доброе утро!
Парсю казахский сайт.
Он в кодировке UTF-8. Мне же надо перевести в windows-1251.
Делаю так -
$text = iconv("UTF-8", "WINDOWS-1251", $text);
Все бы хорошо, но при встрече в тексте первого казахского символа. строка обрезается.
Например, если конвертить это
Тектс на русском, Қатысуға және баға ұсыныстарын ұсынуға шақырамыз. Потом опять текст на русском
то после конвертирования у меня будет только это
Тектс на русском,
Странно все это... Помощи прошу у вас.
← →
Polkin © (2009-12-11 10:33) [1]Эх....сам спросил - сам ответил... А вдруг кому поможет =)
function utf8_win ($s){
$out = "";
$c1 = "";
$byte2 = false;
for ($c = 0; $c < strlen($s); $c++){
$i = ord($s[$c]);
if ($i <= 127) {
$out .= $s[$c];
}
if ($byte2) {
$new_c2 = ($c1 & 3) * 64 + ($i & 63);
$new_c1 = ($c1 >> 2) & 5;
$new_i = $new_c1 * 256 + $new_c2;
if ($new_i == 1025){
$out_i = 168;
}else{
if ($new_i == 1105){
$out_i = 184;
}else {
$out_i = $new_i - 848;
}
}
$out .= chr($out_i);
$byte2 = false;
}
if (($i >> 5) == 6) {
$c1 = $i;
$byte2 = true;
}
}
return $out;
}
← →
test © (2009-12-11 14:53) [2]В Казахстане с кодировками полный швах, встречаются 1252 и 1253. Официально зарегистрирована только кодировка шестсот какая то для Линуха. Лучше не переводить с UTF-8, он показывает любой язык, а в 1251 половина свои букавки дорогие не увидят.
← →
blackman © (2009-12-11 21:48) [3]Iconv не лучший вариант!
Из UTF8 в cp1251, из cp1251 в utf8
http://articles.org.ru/cn/showdetail.php?cid=8527
Можно проверить символы по таблице
Кодировка Windows-1251
http://articles.org.ru/cn/showdetail.php?cid=8509
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2010.02.21;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.004 c