国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁(yè) 微信小程式 微信開(kāi)發(fā) 微信開(kāi)發(fā)之翻譯功能的步驟詳解

微信開(kāi)發(fā)之翻譯功能的步驟詳解

May 13, 2017 pm 02:44 PM

一、介紹

上一篇文章介紹了微信公眾平臺(tái)天氣預(yù)報(bào)功能的開(kāi)發(fā),實(shí)現(xiàn)了微信公眾平臺(tái)的第一個(gè)實(shí)際應(yīng)用,在接下來(lái)的這篇文章中,我們將對(duì)微信翻譯功能進(jìn)行簡(jiǎn)單開(kāi)發(fā),以供讀者參考。

二、思路分析

和上一篇查詢(xún)天氣的思路差不多,首先要對(duì)用戶(hù)發(fā)送過(guò)來(lái)的消息進(jìn)行判斷,判斷訊息是否含有「翻譯」關(guān)鍵字,如果含有,則提取待翻譯內(nèi)容,然後呼叫網(wǎng)路上開(kāi)放的翻譯API 進(jìn)行相關(guān)翻譯。

三、翻譯API 分析

#網(wǎng)路上有許多翻譯API,大家可以依照自己的需求進(jìn)行選擇。這裡我們選擇應(yīng)用比較廣泛的,翻譯功能也比較不錯(cuò)的有道翻譯API 和百度翻譯API,以下對(duì)這兩種API的相關(guān)資訊進(jìn)行分析。

3.1 有道翻譯API

3.1.1 API 位址:fanyi.youdao.com/openapi

##注意:有道提供的API 介面,在下面的測(cè)試時(shí),json 資料格式傳回不正確,到網(wǎng)路查閱資料,可以正確翻譯的位址為fanyi.youdao.com/fanyiapi ,這點(diǎn)注意。

3.1.2 申請(qǐng)

key

按照要求填寫(xiě)相關(guān)信息,這些信息,下面會(huì)使用到,所以請(qǐng)認(rèn)真如實(shí)填寫(xiě)。

申請(qǐng)完後,會(huì)在下方產(chǎn)生API key 和keyfrom,使用API?? 時(shí)會(huì)用到。

3.1.3 API 使用範(fàn)例

#3.1.4 資料格式

a. xml格式

fanyi.youdao.com/openapi.do?keyfrom=orchid&key=1008797533# &type=data&doctype=xml&version=1.1&q=這裡有道翻譯API


<?xml version="1.0" encoding="UTF-8"?><youdao-fanyi>
    <errorCode>0</errorCode>
    <!-- 有道翻譯 -->
    <query><![CDATA[這里是有道翻譯API]]></query>
    <translation>
        <paragraph><![CDATA[Here is the youdao translation API]]></paragraph>
    </translation></youdao-fanyi>

b. json 格式

http://fanyi.youdao.com/openapi.do?keyfrom=orchid&key= 1008797533&type=data&doctype=json&version=1.1&q=翻譯


#

{
    "errorCode":0
    "query":"翻譯",
    "translation":["translation"], // 有道翻譯
    "basic":{ // 有道詞典-基本詞典
        "phonetic":"fān yì",
        "explains":[
            "translate",
            "interpret"
        ]
    },
    "web":[ // 有道詞典-網(wǎng)絡(luò)釋義
        {
            "key":"翻譯",
            "value":["translator","translation","translate","Interpreter"]
        },
        {...}
    ]
}

3.2 百度翻譯API

3.2.1 API 位址:openapi.baidu.com/public/2.0/bmt/translate

#3.2 .2?取得api key

開(kāi)發(fā)者在百度連線(xiàn)平臺(tái)上註冊(cè)得到的授權(quán)API key,詳細(xì)請(qǐng)參閱:http://developer.baidu.com/wiki/index.php?title=%E5% B8%AE%E5%8A%A9%E6%96%87%E6%A1%A3%E9%A6%96%E9%A1%B5/%E7%BD%91%E7%AB%99%E6%8E %A5%E5%85%A5/%E5%85%A5%E9%97%A8%E6%8C%87%E5%8D%97

##3.2. 3 API 使用範(fàn)例

3.2.4 資料格式

百度翻譯API 回應(yīng)的資料格式為UTF-8編碼的

PHP陣列對(duì)應(yīng)的標(biāo)準(zhǔn)JSON字串。


{
    “from”:”zh”,
    “to”:”en”,
    “trans_result”:[]
}

trans_result 為一個(gè)數(shù)組,其中每一個(gè){}就是一個(gè)段落,結(jié)構(gòu)如下所示:


trans_result: [
{},
{},
{}
]

段落結(jié)果即為trans_result 陣列中的一項(xiàng):


{
“src”:””,
“dst”:””
}

段落結(jié)果說(shuō)明:

##經(jīng)json_decode 後的形式:

{
    "from": "en",
    "to": "zh",
    "trans_result": [
        {
            "src": "today",
            "dst": "今天"
        }
    ]
}

四、關(guān)鍵字判斷與待翻譯內(nèi)容讀取翻譯訊息的格式是“翻譯+待翻譯內(nèi)容”,所以首先截取前兩個(gè)字,判斷是否為“翻譯” 關(guān)鍵字。

使用php函數(shù) mb_substr() 截取,關(guān)于該函數(shù)的用法上一篇已經(jīng)講過(guò),這里不再贅述。

$str_trans = mb_substr($keyword,0,2,"UTF-8");

從消息的開(kāi)頭開(kāi)始截取,截取兩個(gè)字符,然后加以判斷是否為 “翻譯” 關(guān)鍵字。

$str_valid = mb_substr($keyword,0,-2,"UTF-8");

判斷是否只輸入“翻譯”兩字,這樣輸入,沒(méi)有待翻譯內(nèi)容,則輸入的消息也不正確。

接下來(lái)進(jìn)行待翻譯內(nèi)容提?。?/p>

$word = mb_substr($keyword,2,220,"UTF-8");

從消息的開(kāi)頭第3個(gè)字符開(kāi)始截取,截取202個(gè)字符,截取出來(lái)的即為待翻譯內(nèi)容。

接著調(diào)用函數(shù)進(jìn)行翻譯。


//調(diào)用有道詞典$contentStr = $this->youdaoDic($word);//調(diào)用百度詞典$contentStr = $this->baiduDic($word);

五、具體實(shí)現(xiàn)

5.1 有道翻譯API

數(shù)據(jù)接口:


http://fanyi.youdao.com/openapi.do?keyfrom=<keyfrom>&key=<key>&type=data&doctype=<doctype>&version=1.1&q=要翻譯的文本

將上面的keyfrom 和key換成上面申請(qǐng)的內(nèi)容,然后選擇doctype,再輸入要翻譯的文本,就可以調(diào)用有道翻譯API 進(jìn)行翻譯了。

有道翻譯提供了三種數(shù)據(jù)格式,這里我們只講解兩種,即xml 和json。

5.1.1 xml 格式

關(guān)鍵代碼如下:


  youdaoDic( = "orchid";    
         = "YourApiKey";  
         = &#39;http://fanyi.youdao.com/fanyiapi.do?keyfrom=&#39;..&#39;&key=&#39;..&#39;&type=data&doctype=xml&version=1.1&q=&#39;. = ( = -> = ->translation->( == 0  "無(wú)法進(jìn)行有效的翻譯"

說(shuō)明:

$xmlStyle = simplexml_load_file($url_youdao);  // PHP 函數(shù),將XML 文檔載入對(duì)象中。

$errorCode = $xmlStyle->errorCode;  // 獲取錯(cuò)誤碼

$paras = $xmlStyle->translation->paragraph;  // 獲取翻譯內(nèi)容

5.1.2 json 格式

關(guān)鍵代碼如下:


    public function youdaoDic($word){        $keyfrom = "orchid";    //申請(qǐng)APIKEY時(shí)所填表的網(wǎng)站名稱(chēng)的內(nèi)容
        $apikey = "YourApiKey";  //從有道申請(qǐng)的APIKEY
        
        //有道翻譯-json格式
        $url_youdao = &#39;http://fanyi.youdao.com/fanyiapi.do?keyfrom=&#39;.$keyfrom.&#39;&key=&#39;.$apikey.&#39;&type=data&doctype=json&version=1.1&q=&#39;.$word;        
        $jsonStyle = file_get_contents($url_youdao);        $result = json_decode($jsonStyle,true);        
        $errorCode = $result[&#39;errorCode&#39;];        
        $trans = &#39;&#39;;        if(isset($errorCode)){            switch ($errorCode){                case 0:                    $trans = $result[&#39;translation&#39;][&#39;0&#39;];                    break;                case 20:                    $trans = &#39;要翻譯的文本過(guò)長(zhǎng)&#39;;                    break;                case 30:                    $trans = &#39;無(wú)法進(jìn)行有效的翻譯&#39;;                    break;                case 40:                    $trans = &#39;不支持的語(yǔ)言類(lèi)型&#39;;                    break;                case 50:                    $trans = &#39;無(wú)效的key&#39;;                    break;                default:                    $trans = &#39;出現(xiàn)異常&#39;;                    break;
            }
        }        return $trans;
        
    }

說(shuō)明:

$jsonStyle = file_get_contents($url_youdao);  // 把整個(gè)文件讀入一個(gè)字符串中
$result = json_decode($jsonStyle,true);  // 對(duì)JSON 格式的字符串進(jìn)行編碼
$errorCode = $result[&#39;errorCode&#39;];  // 獲取錯(cuò)誤碼
$trans = $result[&#39;translation&#39;][&#39;0&#39;];  // 獲取翻譯結(jié)果

5.2 百度翻譯API

百度翻譯API提供UTF-8編碼的PHP數(shù)組對(duì)應(yīng)的標(biāo)準(zhǔn)JSON字符串,而且提供了 中->英,中->日,英->中,日->中 四種互譯,比有道翻譯多了一種。

關(guān)鍵代碼如下:


    //百度翻譯
    public function baiduDic($word,$from="auto",$to="auto"){        
        //首先對(duì)要翻譯的文字進(jìn)行 urlencode 處理
        $word_code=urlencode($word);        
        //注冊(cè)的API Key
        $appid="YourApiKey";        
        //生成翻譯API的URL GET地址
        $baidu_url = "http://openapi.baidu.com/public/2.0/bmt/translate?client_id=".$appid."&q=".$word_code."&from=".$from."&to=".$to;        
        $text=json_decode($this->language_text($baidu_url));        $text = $text->trans_result;        return $text[0]->dst;
    }        
    //百度翻譯-獲取目標(biāo)URL所打印的內(nèi)容
    public function language_text($url){        if(!function_exists(&#39;file_get_contents&#39;)){            $file_contents = file_get_contents($url);

        }else{                
            //初始化一個(gè)cURL對(duì)象
            $ch = curl_init();            $timeout = 5;            //設(shè)置需要抓取的URL
            curl_setopt ($ch, CURLOPT_URL, $url);            //設(shè)置cURL 參數(shù),要求結(jié)果保存到字符串中還是輸出到屏幕上
            curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);            //在發(fā)起連接前等待的時(shí)間,如果設(shè)置為0,則無(wú)限等待
            curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);            //運(yùn)行cURL,請(qǐng)求網(wǎng)頁(yè)
            $file_contents = curl_exec($ch);            //關(guān)閉URL請(qǐng)求
            curl_close($ch);
        }        return $file_contents;
    }

說(shuō)明:

這里包含了兩個(gè)函數(shù),baiduDic() 和 language_text()。

baiduDic() 函數(shù):

$word_code=urlencode($word);  // 首先對(duì)要翻譯的文字進(jìn)行 urlencode 處理
$text=json_decode($this->language_text($baidu_url));  // 調(diào)用language_text() 函數(shù)獲取目標(biāo)URL所打印的內(nèi)容,然后對(duì)JSON 格式的字符串進(jìn)行編碼
$text = $text->trans_result;  //獲取翻譯結(jié)果數(shù)組
return $text[0]->dst;  //取第一個(gè)數(shù)組的dst 結(jié)果。

language_text() 函數(shù):

判斷file_get_contents() 函數(shù)是否存在,如果存在,則使用該函數(shù)獲取URL內(nèi)容;如果不存在,則使用cURL 工具獲取URL內(nèi)容。具體參見(jiàn)代碼。

六、測(cè)試

有道翻譯-xml 格式:

有道翻譯-json 格式:

百度翻譯:

【相關(guān)推薦】

1. 特別推薦“php程序員工具箱”V0.1版本下載

2. 微信公眾號(hào)平臺(tái)源碼下載

3. 微信投票源碼下載

以上是微信開(kāi)發(fā)之翻譯功能的步驟詳解的詳細(xì)內(nèi)容。更多資訊請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願(yuàn)投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請(qǐng)聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線(xiàn)上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強(qiáng)大的PHP整合開(kāi)發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)程式碼編輯軟體(SublimeText3)

熱門(mén)話(huà)題

Laravel 教程
1600
29
PHP教程
1502
276
wps翻譯功能怎麼用_wps翻譯功能使用方法 wps翻譯功能怎麼用_wps翻譯功能使用方法 Mar 27, 2024 pm 04:46 PM

1、首先我們打開(kāi)手機(jī)wpsoffice。 2、然後點(diǎn)選應(yīng)用。 3.點(diǎn)擊圖片翻譯即可。方法二1、首先我們打開(kāi)手機(jī)wpsoffice。 2、開(kāi)啟需要翻譯的文檔,點(diǎn)選左下角的工具。 3.點(diǎn)選審閱,點(diǎn)選翻譯即可

百度瀏覽器翻譯功能在哪 百度瀏覽器翻譯功能在哪 Feb 27, 2024 pm 02:28 PM

百度瀏覽器翻譯功能在哪?手機(jī)百度瀏覽器作為一款功能強(qiáng)大的瀏覽器,內(nèi)建了許多實(shí)用的輔助功能,如網(wǎng)頁(yè)翻譯功能。這項(xiàng)功能能夠?qū)⒕W(wǎng)頁(yè)上的英文等外語(yǔ)翻譯成中文,對(duì)於經(jīng)常造訪(fǎng)非中文網(wǎng)站的使用者來(lái)說(shuō)極為實(shí)用。那麼,如何在手機(jī)百度瀏覽器中使用網(wǎng)頁(yè)翻譯功能呢?接下來(lái),我將分享詳細(xì)的手機(jī)百度瀏覽器網(wǎng)頁(yè)翻譯功能使用方法,讓有需要的朋友們能更好地利用這項(xiàng)功能。手機(jī)百度瀏覽器網(wǎng)頁(yè)翻譯功能使用方法1、先開(kāi)啟手機(jī)中的百度瀏覽器,在瀏覽器底部點(diǎn)選由三條橫線(xiàn)組成的「選單」圖示;2、此時(shí)介面下方會(huì)彈出百度瀏覽器的選單窗口,我們?cè)?/p>

Edge瀏覽器翻譯功能不見(jiàn)了怎麼找回來(lái)? Edge瀏覽器翻譯功能不見(jiàn)了怎麼找回來(lái)? Mar 13, 2024 pm 08:40 PM

  在使用瀏覽器瀏覽網(wǎng)頁(yè)的時(shí)候,可能會(huì)需要訪(fǎng)問(wèn)一些外文網(wǎng)站,完全看不懂,想要打開(kāi)翻譯發(fā)現(xiàn)自帶的翻譯不見(jiàn)了,還能找回嗎?下面小編就給大家分享找回翻譯功能的方法?! dge瀏覽器怎麼設(shè)定翻譯?首先,啟動(dòng)Edge瀏覽器,然後在右上角找到由三個(gè)點(diǎn)組成的「更多選項(xiàng)」圖標(biāo),並點(diǎn)擊它。  2、點(diǎn)擊之後會(huì)在下方彈出Edge瀏覽器的選單窗口,在窗口中點(diǎn)選開(kāi)啟「設(shè)定」頁(yè)面?! ?、這時(shí)會(huì)進(jìn)入Edge瀏覽器的設(shè)定頁(yè)面,在頁(yè)面左側(cè)的導(dǎo)覽選單中可以看到「語(yǔ)言」這一項(xiàng),點(diǎn)選切換到該設(shè)

如何使用excel中的翻譯功能 如何使用excel中的翻譯功能 Mar 20, 2024 pm 12:40 PM

平時(shí)工作難免會(huì)跟excel打交道,有時(shí)候打開(kāi)表格會(huì)遇到若干語(yǔ)言,這時(shí)大多數(shù)人都會(huì)選擇去網(wǎng)上查、用有道、金山詞霸等等翻譯。其實(shí),excel本身是可以翻譯的,遇到看不懂的語(yǔ)言,不用費(fèi)勁地去網(wǎng)上查的,直接在excel中翻譯就可以了,這樣大大節(jié)省了時(shí)間,也提高了工作效率。那麼,今天就跟大家聊聊如何使用excel的翻譯功能吧! 1.開(kāi)啟excel,在上方選單列中找到「審閱」按鈕,用滑鼠點(diǎn)選一下。 2.下方很清楚的看到“翻譯”二字,點(diǎn)擊“翻譯”,會(huì)看到表格的右方出現(xiàn)了“資訊搜尋”一欄。 3.想要把「生活」翻譯

如何解決Google瀏覽器無(wú)法啟動(dòng)翻譯功能的問(wèn)題 如何解決Google瀏覽器無(wú)法啟動(dòng)翻譯功能的問(wèn)題 Jan 31, 2024 pm 02:00 PM

谷歌瀏覽器翻譯功能啟動(dòng)失敗怎麼辦?許多小夥伴在使用Google瀏覽器的時(shí)候,會(huì)發(fā)現(xiàn)其翻譯功能有時(shí)會(huì)啟動(dòng)失敗,這非常影響我們正常使用。通常,翻譯功能啟動(dòng)失敗一般是因?yàn)閮?nèi)部設(shè)定的問(wèn)題,當(dāng)然也不排除瀏覽器故障等因素,那麼,我們究竟該怎麼解決翻譯功能啟動(dòng)失敗這個(gè)問(wèn)題呢?以下就由小編為大家?guī)?lái)Google瀏覽器翻譯功能啟動(dòng)失敗解決方法。 Google瀏覽器翻譯功能啟動(dòng)失敗解決方法1.開(kāi)啟Google瀏覽器2.進(jìn)入後點(diǎn)選上方的三個(gè)點(diǎn)3.再展開(kāi)的選項(xiàng)中選擇設(shè)定4.進(jìn)入後選擇語(yǔ)言5.點(diǎn)選新增語(yǔ)言6.新增英文7 .勾選詢(xún)問(wèn)是否翻譯此語(yǔ)言的網(wǎng)頁(yè)8.打

PHP微信開(kāi)發(fā):如何實(shí)作訊息加密解密 PHP微信開(kāi)發(fā):如何實(shí)作訊息加密解密 May 13, 2023 am 11:40 AM

PHP是一種開(kāi)源的腳本語(yǔ)言,廣泛應(yīng)用於網(wǎng)頁(yè)開(kāi)發(fā)和伺服器端編程,尤其在微信開(kāi)發(fā)中得到了廣泛的應(yīng)用。如今,越來(lái)越多的企業(yè)和開(kāi)發(fā)者開(kāi)始使用PHP進(jìn)行微信開(kāi)發(fā),因?yàn)樗蔀榱苏嬲囊讓W(xué)易用的開(kāi)發(fā)語(yǔ)言。在微信開(kāi)發(fā)中,訊息的加密和解密是一個(gè)非常重要的問(wèn)題,因?yàn)樗鼈兩婕百Y料的安全性。對(duì)於沒(méi)有加密和解密方式的消息,駭客可以輕鬆取得其中的數(shù)據(jù),對(duì)用戶(hù)造成威脅

edge瀏覽器怎麼設(shè)定英文網(wǎng)頁(yè)彈出翻譯功能 edge瀏覽器怎麼設(shè)定英文網(wǎng)頁(yè)彈出翻譯功能 Mar 27, 2024 pm 04:16 PM

  edge瀏覽器怎麼設(shè)定英文網(wǎng)頁(yè)自動(dòng)翻譯功能?大家應(yīng)該知道,使用edge瀏覽器瀏覽器瀏覽網(wǎng)頁(yè)的時(shí)候,使用者可以在頁(yè)面空白處點(diǎn)擊滑鼠右鍵選擇翻譯為中文,但是如果是想遇到英文網(wǎng)站進(jìn)行自動(dòng)翻譯,那麼就需要進(jìn)行設(shè)定了?! dge瀏覽器設(shè)定英文網(wǎng)頁(yè)自動(dòng)翻譯中文的方法首先,我們需在電腦上啟動(dòng)Edge瀏覽器,接著在瀏覽器頁(yè)面的右上角找到並點(diǎn)選「…」按鈕,然後從下拉選單中選擇「設(shè)定」選項(xiàng)?! ?、第二步,進(jìn)入Edge瀏覽器的設(shè)定頁(yè)面之後,我們?cè)谧髠?cè)清單中點(diǎn)選開(kāi)啟「語(yǔ)言」選項(xiàng)?! ?、第三步,進(jìn)入

如何使用360瀏覽器的翻譯功能 如何使用360瀏覽器的翻譯功能 Jan 30, 2024 pm 07:03 PM

360瀏覽器翻譯功能怎麼用? 360瀏覽器內(nèi)有許多便利的上網(wǎng)工具,可以為我們帶來(lái)方便快速的上網(wǎng)體驗(yàn)。在360瀏覽器的幫助下,我們可以進(jìn)行在瀏覽外文網(wǎng)頁(yè)的時(shí)候,透過(guò)瀏覽器中的自動(dòng)翻譯功能,來(lái)更方便的進(jìn)行外文網(wǎng)頁(yè)的閱覽,如果你不懂的怎麼使用這個(gè)功能的話(huà),就隨小編一起來(lái)看看360瀏覽器自動(dòng)翻譯使用教學(xué)。 360瀏覽器翻譯功能怎麼用1、首先,下載並安裝360安全瀏覽器。 2.在360安全瀏覽器中,我們搜尋自己需要的英文單字或開(kāi)啟需要瀏覽的英文網(wǎng)站頁(yè)面。 3、然後找到瀏覽器的右上方的管理圖標(biāo),點(diǎn)擊圖標(biāo),勾

See all articles