Форум: "Прочее";
Текущий архив: 2007.08.12;
Скачать: [xml.tar.bz2];
Внизutf8 to cp1251 Найти похожие ветки
← →
pasha_golub © (2007-07-16 20:22) [0]Как сделать сабж в PHP?
Поможите, чем можете. Честно рыл все что попадалось под руку. Сил нету больше.
Сабжевая строка берется из сервера PostgreSQL в кодировке UTF8, а потом засовывается в PDF документ, через FPDF класс, с использованием кодировки cp1251. Шрифт добавлен. Если просто написать русскими буквами, то получается.
← →
Zeqfreed © (2007-07-16 20:26) [1]http://ru2.php.net/manual/ru/function.iconv.php ?
← →
pasha_golub © (2007-07-16 20:31) [2]
> Zeqfreed © (16.07.07 20:26) [1]
Спасибо. Пробовал. Не установлен сей зверь на машине почему-то...
Вот так всегда, постанешь вопрос и тут же находится ответ.
Вот, извольте, если кому припечет:function cp1251_to_utf8($s){
$c209 = chr(209); $c208 = chr(208); $c129 = chr(129);
for($i=0; $i<strlen($s); $i++) {
$c=ord($s[$i]);
if ($c>=192 and $c<=239) $t.=$c208.chr($c-48);
elseif ($c>239) $t.=$c209.chr($c-112);
elseif ($c==184) $t.=$c209.$c209;
elseif ($c==168) $t.=$c208.$c129;
else $t.=$s[$i];
}
return $t;
}
function utf8_to_cp1251($s)
{
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;
}
← →
pasha_golub © (2007-07-16 20:36) [3]Все-таки в наши дни, программисту без Интернета работать безсмысленно. :)
← →
Vendict © (2007-07-16 20:55) [4]pasha_golub © (16.07.07 20:36) [3]
а вот тут палка о двух концах, кто для кого, программист для интернета существует или наоборот, интернет для программиста ?
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2007.08.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.046 c