1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > php调用翻译 PHP调用有道词典翻译API实现翻译功能及代码

php调用翻译 PHP调用有道词典翻译API实现翻译功能及代码

时间:2019-12-30 18:42:19

相关推荐

php调用翻译 PHP调用有道词典翻译API实现翻译功能及代码

PHP调用有道词典翻译API实现翻译功能及代码,其中英文可以翻译,中文不能翻译是什么问题啊?急

/openapi.do?keyfrom=cxvsdffd33&key=1310976914&type=data&doctype=xml&version=1.1&q=中文"

回复讨论(解决方案)

将关键字用urlencode 编码下。

你可以直接有我提供的url地址去试试,q后面带好中文参数

我已经编码试过了

建议还是贴出代码吧,这样别人可以直接测试。

/openapi.do?keyfrom=cxvsdffd33&key=1310976914&type=data&doctype=xml&version=1.1&q= 你直接在q后面添加一个参数,分别用中文和英文试一下,看看返回值就行。还有在谷歌浏览器上中英文都可以,在火狐浏览器上,中文不可以,这是为什么????

public function getTransContent($url) { // $url = "/openapi.do?keyfrom=cxvsdffd33&key=1310976914&type=data&doctype=xml&version=1.1&q=" .urlencode($this->keyword); // echo $url; // $url = urlencode($url); $value = file_get_contents($url);//echo $value; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); $html = curl_exec($ch); $jsonValue = json_decode ( $value, true ); //翻译成功 $errorCode = $jsonValue["erroeCode"]; $trans = ''; if (isset($errorCode)) { switch ($errorCode) { case 0: $trans = $jsonValue["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; }}

function getTransContent($url) { // $url = "/openapi.do?keyfrom=cxvsdffd33&key=1310976914&type=data&doctype=xml&version=1.1&q=" .urlencode($this->keyword); // echo $url; // $url = urlencode($url); $value = file_get_contents($url);//echo $value; // $ch = curl_init(); // curl_setopt($ch, CURLOPT_URL, $url); // $html = curl_exec($ch); $ar = simplexml_load_string($value,'SimpleXMLElement',LIBXML_NOCDATA | LIBXML_NOBLANKS); //$jsonValue = json_decode ( $value, true );$errorCode = $ar->errorCode;echo $errorCode.PHP_EOL; //翻译成功 // $errorCode = $jsonValue["erroeCode"]; $trans = ''; if (isset($errorCode)) { switch ($errorCode) { case 0: $trans = $ar->translation->paragraph; break; case 20: $trans = '要翻译的文本过长'; break; case 30: $trans = '无法进行有效的翻译'; break; case 40: $trans = '不支持的语言类型'; break; case 50: $trans = '无效的key'; break; default: $trans = '出现异常'; break; } } return $trans; }$s=urlencode('中文');echo getTransContent("/openapi.do?keyfrom=cxvsdffd33&key=1310976914&type=data&doctype=xml&version=1.1&q=$s");

$c = iconv('gbk', 'utf-8', '中文'); //gbk 一定要转成 utf-8$c = urlencode($c); //必须做 url 编码$url = "/openapi.do?keyfrom=cxvsdffd33&key=1310976914&type=data&doctype=json&version=1.1&q=$c";//返回类型 设为 json,这样处理起来方便些$s = file_get_contents($url);print_r(json_decode($s, 1)); Array( [translation] => Array ( [0] => Chinese ) [basic] => Array ( [phonetic] => zhōng wén [explains] => Array ( [0] => [语] Chinese ) ) [query] => 中文 [errorCode] => 0 [web] => Array ( [0] => Array ( [value] => Array ( [0] => Chinese [1] => facebook [2] => English ) [key] => 中文 ) [1] => Array ( [value] => Array ( [0] => Chinese school [1] => Schools-Chinese [2] => Chinese Language School ) [key] => 中文学校 ) [2] => Array ( [value] => Array ( [0] => fbook [1] => facebook [2] => face ) [key] => 中文登入 ) ))

发布php中文网,转载请注明出处,感谢您的尊重!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。