Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoa,
Eu tenho esse script de tradução de textos para outras linguagens, só tem um problema.. quando eu coloco um texto muito grande ele não traduz, parece que tem um limitador de caracteres.
Alguém o que pode estar acontecendo??
Valew!!! Segue abaixo o script..
<?php
/*
FUNÇÃO PARA TRADUÇÃO USANDO PHP
@Créditos:
Criado por Bruno da Silva (antigo nick DraKiNs)
Acessem: www.ips-team.blogspot.com
@Função
Traduzir texto com simples função php, feito através do tradutor da Google
@Uso:
Usas: getTranslationText("texto para traduzir", "língua de entrada", " língua de saida");
Atenção, o formato de saida e entrada deve ser feito de forma abreviada
@Update: 6/07/2011
@Release: 4/07/2011
Bom proveito, preserve os créditos
*/
echo(getTranslationText("Será que realmente funciona?", "pt", "en")); // português para inglês
function getTranslationText($texto, $entrada, $saida) //Data Base by Google
{
//======= [ Tratar Endereço ] ==============================
$UrlTranslate = parse_url("http://translate.google.com/translate_t");
$DataReceived = " ";
$post_google = array('sl' => $entrada, 'tl' => $saida ,'text' => utf8_encode(($texto)));
$post_google = http_build_query(($post_google));
//======= [ Abrir a conexão ] ====================
$TranslateSock = fsockopen($UrlTranslate['host'], 80, $errno, $errstr, 30);
if (!$TranslateSock)
{
fclose($TranslateSock);
die("[ERRO] Erro de conexão, verifique o pedido");
}
fputs($TranslateSock, "POST ". $UrlTranslate['path'] . " HTTP/1.1\r\n");
fputs($TranslateSock, "Host: " . $UrlTranslate['host'] . " \r\n");
fputs($TranslateSock, "Content-type: application/x-www-form-urlencoded\r\n");
fputs($TranslateSock, "Content-length: ". strlen($post_google) ."\r\n");
fputs($TranslateSock, "Connection: close\r\n\r\n");
fputs($TranslateSock, $post_google);
while(!feof($TranslateSock))
{
$DataReceived .= fgets($TranslateSock, 128);
}
fclose($TranslateSock);
//======= [ Tratar resposta ] ====================
$DataReceived = explode("short_text", $DataReceived);
$DataReceived[1] = strip_tags(substr($DataReceived[1] ,2, -(strlen($DataReceived[1]) - strpos($DataReceived[1], "</span>") )));
return ($DataReceived[1]);
}
?>Carregando comentários...