【移動應(yīng)用開發(fā)技術(shù)】微信開發(fā)之如何實(shí)現(xiàn)翻譯功能_第1頁
【移動應(yīng)用開發(fā)技術(shù)】微信開發(fā)之如何實(shí)現(xiàn)翻譯功能_第2頁
【移動應(yīng)用開發(fā)技術(shù)】微信開發(fā)之如何實(shí)現(xiàn)翻譯功能_第3頁
【移動應(yīng)用開發(fā)技術(shù)】微信開發(fā)之如何實(shí)現(xiàn)翻譯功能_第4頁
【移動應(yīng)用開發(fā)技術(shù)】微信開發(fā)之如何實(shí)現(xiàn)翻譯功能_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

【移動應(yīng)用開發(fā)技術(shù)】微信開發(fā)之如何實(shí)現(xiàn)翻譯功能

思路分析翻譯API分析3.1有道翻譯API/upload/information/20201208/260/9759.jpg/upload/information/20201208/260/9761.jpg/upload/information/20201208/260/9763.jpg<?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>{

"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/upload/information/20201208/260/9764.jpg/upload/information/20201208/260/9765.jpg{

“from”:”zh”,

“to”:”en”,

“trans_result”:[]

}trans_result:

[

{},

{},

{}

]{

“src”:””,

“dst”:””

}/upload/information/20201208/260/9766.jpg{

"from":

"en",

"to":

"zh",

"trans_result":

[

{

"src":

"today",

"dst":

"今天"

}

]

}四、關(guān)鍵字判斷與待翻譯內(nèi)容讀取//調(diào)用有道詞典$contentStr

=

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

=

$this->baiduDic($word);五、具體實(shí)現(xiàn)5.1有道翻譯API/openapi.do?keyfrom=<keyfrom>&key=<key>&type=data&doctype=<doctype>&version=1.1&q=要翻譯的文本

youdaoDic(

=

"orchid";

=

"YourApiKey";

=

'/fanyiapi.do?keyfrom='..'&key='..'&type=data&doctype=xml&version=1.1&q='.

=

(

=

->

=

->translation->(

==

0

"無法進(jìn)行有效的翻譯"說明:

public

function

youdaoDic($word){

$keyfrom

=

"orchid";

//申請APIKEY時所填表的網(wǎng)站名稱的內(nèi)容

$apikey

=

"YourApiKey";

//從有道申請的APIKEY

//有道翻譯-json格式

$url_youdao

=

'/fanyiapi.do?keyfrom='.$keyfrom.'&key='.$apikey.'&type=data&doctype=json&version=1.1&q='.$word;

$jsonStyle

=

file_get_contents($url_youdao);

$result

=

json_decode($jsonStyle,true);

$errorCode

=

$result['errorCode'];

$trans

=

'';

if(isset($errorCode)){

switch

($errorCode){

case

0:

$trans

=

$result['translation']['0'];

break;

case

20:

$trans

=

'要翻譯的文本過長';

break;

case

30:

$trans

=

'無法進(jìn)行有效的翻譯';

break;

case

40:

$trans

=

'不支持的語言類型';

break;

case

50:

$trans

=

'無效的key';

break;

default:

$trans

=

'出現(xiàn)異常';

break;

}

}

return

$trans;

}說明:$jsonStyle

=

file_get_contents($url_youdao);//

把整個文件讀入一個字符串中

$result

=

json_decode($jsonStyle,true);//

對JSON

格式的字符串進(jìn)行編碼

$errorCode

=

$result['errorCode'];//

獲取錯誤碼

$trans

=

$result['translation']['0'];//

獲取翻譯結(jié)果5.2百度翻譯API

//百度翻譯

public

function

baiduDic($word,$from="auto",$to="auto"){

//首先對要翻譯的文字進(jìn)行

urlencode

處理

$word_code=urlencode($word);

//注冊的API

Key

$appid="YourApiKey";

//生成翻譯API的URL

GET地址

$baidu_url

=

"/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('file_get_contents')){

$file_contents

=

file_get_contents($url);

}else{

//初始化一個cURL對象

$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è)置為0,則無限等待

curl_setopt

($ch,

CURLOPT_CONNECTTIMEOUT,

$timeout);

//運(yùn)行cURL,請求網(wǎng)頁

$file_contents

=

curl_exec($ch);

//關(guān)閉URL請求

curl_close($ch);

}

return

$file_contents;

}說明:baiduDic()函數(shù):$word_code=urlencode($word);//

首先對要翻譯的文字進(jìn)行

urlencode

處理

$text=json_decode($this->language_text($baidu_url));//

調(diào)用language_text()

函數(shù)獲取目標(biāo)URL所打印的內(nèi)容,然后對JSON

格式的字符串

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論