PDA

Просмотр полной версии : Проблема с (php)кодировкой при скачивании страницы


invlose
01.07.2007, 14:24
charset=ISO-8859-1
кодировка страницы которую скачал

как перекодировать нормально в utf-8 ?
чтобы вместо квадратиков были нормальные латинские буквы=)(нужно будет по-том поиск по тексту делать так что нужно utf-8)

все что пробовал не прокатило Может я че-то не то пробовал)

страницу скачивал так

fsockopen
fgets

Isis
01.07.2007, 14:28
Хм, попробуй получать через функцию....
ну вот...
function encode($str, $type)
{
static $conv='';
if (!is_array ( $conv ))
{
$conv=array ();
for($x=128; $x <=143; $x++ )
{
$conv['utf'][] = chr(209).chr($x);
$conv['win'][] = chr($x+112);
}

for( $x=144; $x <=191; $x++ )
{
$conv['utf'][] = chr(208).chr($x);
$conv['win'][] = chr($x+48);
}

$conv['utf'][] = chr(208).chr(129);
$conv['win'][] = chr(168);
$conv['utf'][] = chr(209).chr(145);
$conv['win'][] = chr(184);
}
if( $type=='w' )
return str_replace ( $conv['utf'], $conv['win'], $str );
elseif( $type=='u' )
return str_replace ( $conv['win'], $conv['utf'], $str );
else
return $str;
}//(c) php.net

А вообще в php есть функция convert_cyr_string (http://php.net/convert_cyr_string), но там не поддерживается utf8...
По примеру можешь сделать