调用有道智云API实现在线翻译 具体步骤在有道官方文档有说明,如下链接,接下来就记录下自己整理的PHP代码,以防自己忘掉,啥也不说了一个字开整!
https://ai.youdao/docs/doc-trans-api.s#p04
< ? php
//在线翻译
$Chinese = “发卡器初始化失败,请检查发卡器连接并在发卡器配置界面重新配置。”;//调用PHP传入待翻译的字符串
f
a
n
y
i
=
t
r
a
n
s
l
a
t
e
(
fanyi = translate(
fanyi=translate(Chinese);
//var_dump($fanyi); //打印下看看是否翻译成功
//利用有道智云提供的API接口来翻译字符串 翻译中文到英文
//将请求参数中的 appKey,识别文本 q (注意为UTF-8编码),随机数 salt 和密钥 (可在 应用管理 查看), 按照 appKey+q+salt+密钥 的顺序拼接得到字符串 str。
//对字符串 str 做md5,得到32位大写的 sign (参考Java生成MD5示例)
//例子
//http://openapi.youdao/api?q=桌子&from=zh-CHS&to=en&appKey=5370a31d25dc964acb5&salt=2&sign=C89C268601E83A997E56FF7B46BCCBC8
function translate(KaTeX parse error: Expected '}', got 'EOF' at end of input: string) { if (string) {
$symbol_array = array(".", “?”, “!”, “)”, “(”, “[”, “]”, “{”, “}”, “:”);
$i = 0;
r
e
s
u
l
t
=
"
"
;
w
h
i
l
e
(
result = ""; while (
result="";while(i < strlen(KaTeX parse error: Expected '}', got 'EOF' at end of input: … if (in_array(string[$i], $symbol_array)) {
$s =
s
t
r
i
n
g
[
string[
string[i];
s
t
r
i
n
g
1
=
s
u
b
s
t
r
(
string1 = substr(
string1=substr(string, 0, $i);
s
t
r
i
n
g
2
=
s
u
b
s
t
r
(
string2 = substr(
string2=substr(string, $i + 1);
r
e
s
u
l
t
=
s
i
m
p
l
e
t
r
a
n
s
l
a
t
e
(
result = simple_translate(
result=simpletranslate(string1).
s
.
t
r
a
n
s
l
a
t
e
(
s.translate(
s.translate(string2);
break;
}
KaTeX parse error: Expected 'EOF', got '}' at position 8: i++; }̲ if (!result) {
r
e
s
u
l
t
=
s
i
m
p
l
e
t
r
a
n
s
l
a
t
e
(
result = simple_translate(
result=simpletranslate(string);
}
return KaTeX parse error: Expected 'EOF', got '}' at position 10: result; }̲ else { retu…sentence) {
$appKey = “5370a31d25dc964acb5”;//appKey 有道智云的应用ID
$salt = "8";//随机数 随便写
$miyao = "u5H9ZFBXIhA5P6zpE4NhCcBnWL4R14A5ll6";//秘钥
$str = md5($appKey.$sentence.$salt.$miyao);
$url_sentence = urlencode($sentence);
$url = 'http://openapi.youdao/api?q='.$sentence.'&from=zh-CHS&to=en&appKey='.$appKey.'&salt='.$salt.'&sign='.$str; //把例子组成url
//var_dump($url);
$str_json = file_get_contents($url);
if ($str_json) {
$info = json_decode($str_json);
$translation = $info->translation;
$result_sentence = $translation[0];
}
else {
$result_sentence = $sentence;
}
var_dump($result_sentence);
return $result_sentence;
}
? >
更多推荐
PHP利用有道智云提供的API接口来翻译字符串
发布评论