Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php怎么实现翻译

php怎么实现翻译

藏色散人
藏色散人asal
2022-01-21 11:22:424983semak imbas

php实现翻译的方法:1、创建一个PHP示例文件;2、通过有道翻译json格式来显示传值;3、利用PHP自带的函数,抓取URL返回的json数据;4、将json数据转换成对象类的形式即可。

php怎么实现翻译

本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑

php怎么实现翻译?

PHP实现翻译功能

今天我们聊聊用PHP实现翻译功能,当然PHP这门语言它肯定无法成为一个翻译家,我们需要借助专门做翻译这件事情的程序给我们开放的API接口来获取数据,最终交由PHP来解析数据,展示到我们需要的平台上。

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

     <?php
          function transLate($word){
               // keyfrom和apikey是有道开放平台提供的
               // 大家去这里注册即可获得:http://fanyi.youdao.com/openapi
       $keyfrom = "******";
       $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;
               // 利用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 = &#39;要翻译的文本过长&#39;;
break;
case 30:
$trans = &#39;无法进行有效的翻译&#39;;
break;
case 40:
$trans = &#39;不支持的语言类型&#39;;
break;
   case 50:
$trans = &#39;无效的key&#39;;
break;
default:
$trans = &#39;出现异常&#39;;
break;
}
  }
  return $trans;
}
        // 测试"英翻汉"或者"汉翻英"都可以
echo transLate(&#39;很高兴认识你&#39;);
echo transLate(&#39;Nice to meet you&#39;);
?>

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

推荐学习:《PHP视频教程

Atas ialah kandungan terperinci php怎么实现翻译. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php5.6.31如何编译安装Artikel seterusnya:FastCGI怎么安装PHP