17.01.2010, 15:50 |
#4
|
Дорвейщик
Регистрация: 06.07.2009
Сообщений: 206
|
переделанный
Цитата:
function translate($text, $from, $to) {
$agent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322)" ;
$header [] = "Accept: text/html;" ;
$header [] = "Accept_charset: utf-8";
$header [] = "Accept_encoding: identity";
$header [] = "Accept_language: en-us";
$header [] = "Connection: Keep-Alive";
$ch = curl_init ();
$url = 'http://translate.google.com/translate_a/t?client=t&text='.urlencode($text).'&sl='.$from.'& tl='.$to;
curl_setopt ( $ch , CURLOPT_URL , $url );
curl_setopt ( $ch , CURLOPT_RETURNTRANSFER , 1 );
curl_setopt ( $ch , CURLOPT_VERBOSE , 1 );
curl_setopt ( $ch , CURLOPT_USERAGENT , $agent );
curl_setopt ( $ch , CURLOPT_HTTPHEADER , $header );
curl_setopt ( $ch , CURLOPT_FOLLOWLOCATION , 1 );
$tmp = curl_exec ( $ch );
curl_close ( $ch );
$tmp = substr ($tmp, 1, strlen ($tmp)-2);
$pos1=strpos($tmp,"trans\":\"")+8;
$pos2=strpos($tmp,"\"",$pos1);
$tmp=substr($tmp,$pos1,$pos2-$pos1);
return $tmp;
}
echo translate("my name is jack","en","ru");
?> |
переводит только в кодировке utf-8
|
|
|