多平台翻译=有道翻译+百度翻译+必应翻译+get Curl+xml转array

284 阅读1分钟

多平台翻译

    public  function geturl($url, $headerArray =array("Content-type:application/json;","Accept:application/json")){
 
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); 
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch,CURLOPT_HTTPHEADER,$headerArray);
        $output = curl_exec($ch);
        curl_close($ch);
        return $output;
}
 //有道翻译
 public function youdao_programmers($str) {
      
          $output =$this->geturl("http://fanyi.youdao.com/translate?&doctype=json&type=AUTO&i=".$str);
          
        $output = json_decode($output,true);
       return $output ;
   
 }
 //百度翻译
 public function baidu_programmers($str) {
      
        //   $output =$this->geturl($str);
        $appid="20191213000365635";
        $appkey="sniBd5CnmDJSNzMJCjMN";
        $q=$str;
        // appid=20191213000365635+q=apple+salt=1435660288+密钥=sniBd5CnmDJSNzMJCjMN
        $sign=md5($appid. $q."1435660288".$appkey); 
    //   var_dump('http://api.fanyi.baidu.com/api/trans/vip/translate?q='. $q.'&from=auto&to=auto&appid='.$appid.'&salt=1435660288&sign='.$sign);die;
          $output =$this->geturl('http://api.fanyi.baidu.com/api/trans/vip/translate?q='. $q.'&from=auto&to=auto&appid='.$appid.'&salt=1435660288&sign='.$sign,["application/x-www-form-urlencoded;"]); 
        //   $output= '{"from":"zh","to":"en","trans_result":[{"src":"\u4f60\u597d\u4e2d\u56fd1602794101","dst":"Hello China 1602794101"}]}';
        $output = json_decode($output,true);
      
  
          
         return $output ;
          die;
   
 }
 //必应翻译
 public function bing_programmers($str) {
              $appid="A4D660A48A6A97CCA791C34935E4C02BBB1BEC1C"; 
            //   var_dump("http://api.microsofttranslator.com/v2/Http.svc/Translate?appId=".$appid."&from=&to=en&text=".$str);die;
          $output =$this->geturl("http://api.microsofttranslator.com/v2/Http.svc/Translate?appId=".$appid."&from=&to=en&text=".$str);
            //   $output =$this->geturl("http://api.microsofttranslator.com/v2/Http.svc/Translate?appId=A4D660A48A6A97CCA791C34935E4C02BBB1BEC1C&from=&to=en&text=".$str);
              if(empty($output)){
                return "0";
          }
          $output=$this->xmlstr_to_array($output);
          return  $output;
          die;
   
 }
  /*
    xml转成数组
     */
  public function xmlstr_to_array($xmlstr){//xml字符串转数组
       
        $ob= simplexml_load_string($xmlstr,'SimpleXMLElement', LIBXML_NOCDATA);//将字符串转化为变量
        $json = json_encode($ob);//将对象转化为JSON格式的字符串
        $configData = json_decode($json, true);//将JSON格式的字符串转化为数组
        return $configData;
    }