ترجمه متن با موتور ترجمه قدرتمند گوگل بدون نیاز به API در PHP

ترجمه متن با موتور ترجمه قدرتمند گوگل

در این پست کدی را در اختیار شما قرار دهیم که با آن میتونید کار ترجمه متن و کلمه را در PHP با استفاده از موتور قدرتمند گوگل انجام دهید.
تفاوت این کد با کدهای رایج در این هست که شما نیازی به تهیه API از گوگل ندارید و بصورت رایگان میتوانید از سرویس ترجمه در پروژه های خودتان استفاده کنید.

با استفاده از این کد میتوانید عمل ترجمه متن را انجام دهید :

کد PHP:
 <?php
$text             
"Hi ! Welcome To Blog.iranwebsv.net";
$source         'en';
$target         'fa';

$translation     GoogleTranslate::translate($source$target$text);

echo 
'<pre>';
print_r($translation);
echo 
'</pre>';

class 
GoogleTranslate
{

    public static function 
translate($source$target$text) {
        
        
$response         self::requestTranslation($source$target$text);
        
$translation     self::getSentencesFromJSON($response);
        return 
$translation;
    }

    protected static function 
requestTranslation($source$target$text) {
        
$url "https://translate.google.com/translate_a/single?client=at&dt=t&dt=ld&dt=qca&dt=rm&dt=bd&dj=1&hl=es-ES&ie=UTF-8&oe=UTF-8&inputm=2&otf=2&iid=1dd3b944-fa62-4b55-b330-74909a99969e";
        
$fields = array(
            
'sl' => urlencode($source),
            
'tl' => urlencode($target),
            
'q' => urlencode($text)
        );

        
$fields_string "";
        foreach(
$fields as $key=>$value) {
            
$fields_string .= $key.'='.$value.'&';
        }
        
        
rtrim($fields_string'&');
        
$ch curl_init();
        
curl_setopt($chCURLOPT_URL$url);
        
curl_setopt($chCURLOPT_POSTcount($fields));
        
curl_setopt($chCURLOPT_POSTFIELDS$fields_string);
        
curl_setopt($chCURLOPT_RETURNTRANSFERtrue);
        
curl_setopt($chCURLOPT_ENCODING'UTF-8');
        
curl_setopt($chCURLOPT_SSL_VERIFYPEERfalse);
        
curl_setopt($chCURLOPT_SSL_VERIFYHOSTfalse);
        
curl_setopt($chCURLOPT_USERAGENT'AndroidTranslate/5.3.0.RC02.130475354-53000263 5.1 phone TRANSLATE_OPM5_TEST_1');

        
$result curl_exec($ch);

        
curl_close($ch);
        return 
$result;
    }

    protected static function 
getSentencesFromJSON($json) {
        
$sentencesArray json_decode($jsontrue);
        
$sentences "";
        foreach (
$sentencesArray["sentences"] as $s) {
            
$sentences .= $s["trans"];
        }
        return 
$sentences;
    }
}
?>
متغیر text متن دلخواهی که میخواهید ترجمه شود، در متغیر source کد زبان وارد شده (مثلا en) و در متغیر target کد زبانی که میخواهید به آن زبان ترجمه شود (مثلا fa) را وارد کنید .