PHP调用谷歌翻译

Posted xiaobingch

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP调用谷歌翻译相关的知识,希望对你有一定的参考价值。

<?php
/*class Google_API_translator {

    public  $url = "http://translate.google.com/translate_t";

    public $text = "";//带翻译内容

    public $out  = "";//输出内容

    public function setText($text)
    {
        $this->text = $text;
    }


    public function translate()
    {
        $this->out = "";

        $gphtml = $this->postPage($this->url,$this->text);
        var_dump($gphtml);exit;

        //提取翻译结果
        $out  = substr($gphtml,strpos($gphtml,‘‘));

        $out = substr($out,29);

        $out  = substr($out,0,strpos($out,‘‘));

        $this->out = $out;

        return $this->out;

    }

    public  function  postPage($url,$text)
    {
        $html = ‘‘;
        if($url != ‘‘ && $text != ‘‘){
            $ch = curl_init($url);

            curl_setopt($ch,CURLOPT_REFERER,1);

            curl_setopt($ch,CURLOPT_HEADER,1);

            curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);

            curl_setopt($ch,CURLOPT_TIMEOUT,15);

            $fields = array(‘hl=zh-CN‘, ‘langpair=zh-CN|en‘, ‘ie=UTF-8‘,‘text=‘.urlencode(mb_convert_encoding($text, ‘UTF-8‘, ‘GB2312‘)));

            curl_setopt($ch,CURLOPT_POST,1);

            curl_setopt($ch, CURLOPT_POSTFIELDS, implode(‘&‘, $fields));
            $html = curl_exec($ch);

            if(curl_errno($ch)) $html = "curl_error";
            curl_close($ch);

        }

        return $html;

    }

}

//just for test
$g = new Google_API_translator();

$g->setText(‘我是谁!‘);

$g->translate();*/

function gtranslate($text,$to=‘zh-CN‘){
    $entext = urlencode($text);
    $url = ‘https://translate.google.cn/translate_a/single?client=gtx&dt=t&ie=UTF-8&oe=UTF-8&sl=auto&tl=‘.$to.‘&q=‘.$entext;
    set_time_limit(0);
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER[‘HTTP_USER_AGENT‘]);
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_MAXREDIRS,20);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 40);
    curl_setopt($ch, CURLOPT_URL, $url);
    $result = curl_exec($ch);
    curl_close($ch);
    $result = json_decode($result);
    if(!empty($result)){
        foreach($result[0] as $k){
            $v[] = $k[0];
        }
        return implode(" ", $v);
    }
}
$longtext = "Why Should You Get Our Smart Trainer for your Little Munchkin? 
Upgraded Soft Waterproof Skin-Friendly Material: High-quality swimwear fabric and TPU film wrap which looks like leather but touches like skin. Fast dry and the bacteria are hard to breed on this foam baby swim float. Non-inflatable Air-Free Swim Trainer is the safest and durable float available in the market today

Upgraded Safety Buckles: The Upgraded safety buckle provides 5 support points and perfect 40° angle to keep the balance thus avoiding the baby to flip over and fall off. Upgraded into 2 swim ways for perfect Backstroke and Breaststroke. Backstroke Suitable for 3~12 months baby, Breaststroke Suitable for 3~24 months baby

Perfect Fit for Children: Suitable for babies weighing from 13 to 40 lbs. Suitable for Kids 3~24 months. Adjustable buckle at the back to suit most infant sizes. Easily adjustable with the attached Safety pin at the back of the float";
echo gtranslate($longtext);

 

以上是关于PHP调用谷歌翻译的主要内容,如果未能解决你的问题,请参考以下文章

php 谷歌翻译代码

php 谷歌翻译代码

php ThemeGrill谷歌翻译

PHP Zend翻译:谷歌

php 一个自定义的try..catch包装器代码片段,用于执行模型函数,使其成为一个单行函数调用

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js