標籤:php json 百度翻譯 api json_decode
今天給一個小程式寫後台,通過調用百度翻譯API實現翻譯功能。
調用百度API的url為‘http://openapi.baidu.com/public/2.0/translate/dict/simple?client_id=你的KEY&q=要查的漢語&from=zh&to=en‘;
申請步驟詳見點擊開啟連結
以上是前期準備工作
===================================================================================================
通過調用百度翻譯的API穿回的json為:{"errno":0,"data":{"word_name":"\u4f60\u597d","symbols":[{"ph_zh":"n\u01d0 h\u01ceo","parts":[{"part":"","means":["hello","hi","How do you do!"]}]}]},"to":"en","from":"zh"}‘
這裡眼力不好的同學可以格式化一下字串
{"errno":0,"data":{"word_name":"\u4f60\u597d","symbols":[{"ph_zh":"n\u01d0 h\u01ceo","parts":[{"part":"","means":["hello","hi","How do you do!"]}]}]},"to":"en","from":"zh"}
關鍵語句:json_decode($jsonResult)->data->symbols[0]->parts[0]
也怪我太笨了,就這麼一條語句折騰了我一晚上……基礎太重要了!!!
通過這一步擷取到了
{"part":"","means":["hello","hi","How do you do!"]}
下一步通過
$jsonObj->means[0]$jsonObj->means[1]$jsonObj->means[2]
分別擷取“你好”的3個釋義。
實際操作中可以通過迴圈語句擷取全部的釋義。
下面是全部代碼
<?php$word=$_GET['s']; $url='http://openapi.baidu.com/public/2.0/translate/dict/simple?client_id=你的KEY&q='.$word.'&from=zh&to=en';$jsonResult=file_get_contents($url);$jsonObj=json_decode($jsonResult)->data->symbols[0]->parts[0];echo $jsonObj->means[0].'<br />';echo $jsonObj->means[1].'<br />';echo $jsonObj->means[2].'<br />';?>
輸入 url?s=你好
運行結果
php處理json碼 執行個體:PHP實現百度翻譯API調用處理