Ler uma url com file_get_contents de codificação diferente da nossa página



:. Ler uma url com file_get_contents de codificação diferente da nossa página e converte-la antes de poder trata-la .:



$in_charset = "iso-8859-1";   // == "windows-874" ; ou outro qualquer
$out_charset = "utf-8";         // outro qualquer

$opts = array(
 "http"=>array(
        "method"=>"GET",
        "header"=> implode("\r\n", array(
         "Content-type: text/plain; charset=" . $in_charset
           ))
        )
    );
$context = stream_context_create($opts);
$contents = file_get_contents($href,false, $context);
if ($in_charset != $out_charset) 
{
$contents = iconv($in_charset, $out_charset, $contents);
}

A função iconv converte uma string numa codificação pretendida

Nota:

Se você acrescentar a string “//TRANSLIT” à codificação de saída($out_charset) a transliteração é ativado. Isto significa que, quando um carácter não pode ser representado na codificação de saída, este pode ser substituído por outro semelhante. Se acrescentar a string “// IGNORE”, neste caso, os caracteres que não podem ser representados na codificação de saída são descartados. Caso contrário, a string será cortado a partir do primeiro caracter ilegal e um aviso é gerado

Autor: Luís Filipe
Data: 2013-02-28


Contato: mail@artigosenoticias.com   |   SAPO MAIL   |   HOTMAIL  |   GMAIL