Спецсиволы и парсинг

Ну да, это кодировка UTF-8. Ни разу не работали с такой?
PHP:
echo iconv("utf-8","windows-1251",$result);
 
Ну да, это кодировка UTF-8. Ни разу не работали с такой?
PHP:
echo iconv("utf-8","windows-1251",$result);
просто как я знаю utf8 должна нормально работать как с кирилицей так и с латиницей... только вот в моем примере почему то кирилицу только в cp1251 распознало
 
Код:
file_get_contents()
Не совсем удобная функция в плане работы с кодировками, да и вообще для более менее серьезного парсинга.
Попробуй использовать CURL.
Рабочий пример:
Код:
<?php
 
function get_web_page ($url) {
  $uagent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0.1) Gecko/20100101 Firefox/10.0.1";
  $header = "";
  $ch = curl_init( $url );
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // возвращает веб-страницу
  curl_setopt($ch, CURLOPT_HEADER, 0); // не возвращает заголовки
  curl_setopt($ch, CURLOPT_REFERER, '');
  curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  curl_setopt($ch, CURLOPT_ENCODING, "UTF-8"); // обрабатывает все кодировки
  curl_setopt($ch, CURLOPT_USERAGENT, $uagent);  // useragent
  curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);            // таймаут соединения
  curl_setopt($ch, CURLOPT_TIMEOUT, 60); // таймаут ответа
  curl_setopt($ch, CURLOPT_MAXREDIRS, 20);                // останавливаться после 20-ого редиректа
  curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0); // не проверять SSL сертификат
  curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0); // не проверять Host SSL сертификата
  curl_setopt ($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/html')); // это необходимо, чтобы cURL не высылал заголовок на ожидание
 
  $content = curl_exec( $ch );
  $err    = curl_errno( $ch );
  $errmsg  = curl_error( $ch );
  $header  = curl_getinfo( $ch );
  curl_close( $ch );
 
  $header['errno']  = $err;
  $header['errmsg']  = $errmsg;
  $header['content'] = $content;
  return $header;
}
 
    $result        = get_web_page("http://mail.ru/");
 
    echo $result['content'];
 
    ?>
 
Назад
Сверху