PHP实现翻译功能

       今天我们聊聊用PHP实现翻译功能,当然PHP这门语言它肯定无法成为一个翻译家,我们需要借助专门做翻译这

事情的程序给我们开放的API接口来获取数据,最终交由PHP来解析数据,展示到我们需要的平台上。

       大家应该都知道有道翻译,它算是国内做的比较好的翻译平台,今天我们就利用它开放的接口来学习,下面开始

解代码。

       <?php
          function transLate($word){

               // keyfrom和apikey是有道开放平台提供的

               // 大家去这里注册即可获得:http://fanyi.youdao.com/openapi
       $keyfrom = "******";
       $apikey = "******";     

                 
       // 通过有道翻译json格式来显示传值
       $url_youdao = 'http://fanyi.youdao.com/fanyiapi.do?keyfrom='.$keyfrom.'&key='.$apikey.'&type=data&doctype=json&version=1.1&q='.$word;


               // 利用PHP自带的函数,抓取URL返回的json数据
       $json = file_get_contents($url_youdao);


      // 说明:假如是写成$obj = json_decode($json,true);
              // 则此时obj就是一个数组
              // 但是不加true,则是将json数据转换成对象类的形式,即返回的是对象。

      $obj = json_decode($json);
        

              // 得到返回码 
      $errorCode = $obj->errorCode;      


 if(isset($errorCode))
 {
switch ($errorCode) 
{
case 0:        // 说明返回的数据正常 
$trans = $obj->translation[0];     
break;


case 20:
$trans = '要翻译的文本过长';
break;


case 30:
$trans = '无法进行有效的翻译';
break;


case 40:
$trans = '不支持的语言类型';
break;


   case 50:
$trans = '无效的key';
break;

default:
$trans = '出现异常';
break;
}

  }
  return $trans;
}

        // 测试"英翻汉"或者"汉翻英"都可以
echo transLate('很高兴认识你');
echo transLate('Nice to meet you');
?>

         其实利用PHP去解析开放API接口获取数据的案例还有很多,以后还慢慢给大家分享吧!

         大家可以关注我的微信公众号:iwork,我会每天推送一篇原创文章,让大家都能有所收获!



猜你喜欢

转载自blog.csdn.net/bayren820/article/details/50421540