Использование google-translate api при переводе с русского языка

Discussion in 'PHP' started by je0n, 17 Jan 2010.

  1. je0n

    je0n Elder - Старейшина

    Joined:
    14 May 2006
    Messages:
    345
    Likes Received:
    96
    Reputations:
    41
    PHP:
    <html>
    <head>
    <title>translate</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    <body>
    <?php 
    function translate($s_text$s_lang$d_lang){
    $url "http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=".urlencode($s_text)."&langpair=".urlencode($s_lang.'|'.$d_lang);

    $c curl_init();
     
    $header [] = "Accept: text/html;" ;  
     
    $header [] = "Accept_charset: utf-8";  
     
    $header [] = "Accept_encoding: identity";  
     
    $header [] = "Accept_language: en-us";  
     
    $header [] = "Connection: Keep-Alive";  
    curl_setopt($cCURLOPT_URL$url);
    curl_setopt($cCURLOPT_RETURNTRANSFER1);
    curl_setopt($cCURLOPT_REFERER"http://mysite.ru/");
    curl_setopt($cCURLOPT_HTTPHEADER $header ); 
    $b curl_exec($c);
    curl_close($c);
    $json json_decode($btrue);
    if (
    $json['responseStatus'] != 200)return false;
    return 
    $json['responseData']['translatedText'];
    }

    echo 
    translate("my name is jack","en","ru"); 
    ?>
    </body>
    </html>
    Эта функция прекрасно работает, если переводить с английского на русский. А вот наоборот - нефига. Я хз че делать :( Помогите!
     
    #1 je0n, 17 Jan 2010
    Last edited: 17 Jan 2010
  2. WNZRS

    WNZRS Member

    Joined:
    3 Sep 2009
    Messages:
    294
    Likes Received:
    52
    Reputations:
    1
    у отправляемого текста utf-8 ?
    если нет, то $text = iconv('cp1251', 'utf-8', $text);
     
    2 people like this.
  3. je0n

    je0n Elder - Старейшина

    Joined:
    14 May 2006
    Messages:
    345
    Likes Received:
    96
    Reputations:
    41
    СПАСИБО!!! Помогло!