|
...
|
...
|
@@ -83,42 +83,63 @@ class TranslateLogic extends BaseLogic |
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// $old_key = [];//key值组成数据
|
|
|
|
// if($info !== false){
|
|
|
|
// $data_read = json_decode($info['data']);
|
|
|
|
// foreach ($data_read as $k => $v){
|
|
|
|
//// if(!in_array($k,$text_array)){
|
|
|
|
//// $arr2[] = $k;
|
|
|
|
//// }
|
|
|
|
//// $old_key[] = $k;
|
|
|
|
// $data[] = [$k => $v];
|
|
|
|
// }
|
|
|
|
// }else{
|
|
|
|
// $arr2 = array_values(array_diff($text_array, $old_key));
|
|
|
|
// }
|
|
|
|
// if(!empty($arr2)){
|
|
|
|
// $i = 0;
|
|
|
|
// TranslateText:
|
|
|
|
// $translate_list = Translate::tran($arr2, $languageInfo['short']);
|
|
|
|
// if(empty($translate_list)){
|
|
|
|
// if ($i < 3) {
|
|
|
|
// $i++;
|
|
|
|
// goto TranslateText;
|
|
|
|
// }
|
|
|
|
// $this->fail('翻译失败,请稍后重试!');
|
|
|
|
// }
|
|
|
|
// if(count($arr2) == 1){
|
|
|
|
// $data[] = [
|
|
|
|
// $arr2[0]=>$translate_list
|
|
|
|
// ];
|
|
|
|
// }else{
|
|
|
|
// foreach ($arr2 as $k => $v){
|
|
|
|
// $data[] = [
|
|
|
|
// $v=>$translate_list[$k]
|
|
|
|
// ];
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
public function getTranslateList(){
|
|
|
|
$data = [];
|
|
|
|
if($this->param['url'] == 'All'){
|
|
|
|
$info = $this->model->read(['url'=>$this->param['url'],'language_id'=>$this->param['language_id'],'type'=>$this->param['type']]);
|
|
|
|
if(!empty($info) && !empty($info['data'])){
|
|
|
|
$translateInfo = json_decode($info['data'],JSON_UNESCAPED_UNICODE);
|
|
|
|
foreach ($translateInfo as $k => $v){
|
|
|
|
$data[] = [$k=>$v];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return $this->success($data);
|
|
|
|
}
|
|
|
|
// 需要校对路由
|
|
|
|
$url = $this->user['domain'] . (($this->param['url'] != '/') ? $this->param['url'] : '');
|
|
|
|
// 需要校对语种
|
|
|
|
$languageInfo = $this->getLanguage($this->param['language_id']);
|
|
|
|
// 原始校对内容
|
|
|
|
$info = $this->model->read(['url'=>$this->param['url'],'language_id'=>$this->param['language_id'],'type'=>$this->param['type']]);
|
|
|
|
//获取当前URl的所有文本内容
|
|
|
|
$text_array = $this->getUrlRead($url);
|
|
|
|
// 原始校对程序
|
|
|
|
$old_key = [];//key值组成数据
|
|
|
|
if($info !== false){
|
|
|
|
$data_read = json_decode($info['data'],JSON_UNESCAPED_UNICODE);
|
|
|
|
foreach ($data_read as $k => $v){
|
|
|
|
$old_key[] = $k;
|
|
|
|
$data[] = [$k => $v];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$arr2 = array_values(array_diff($text_array, $old_key));
|
|
|
|
if(!empty($arr2)){
|
|
|
|
$i = 0;
|
|
|
|
TranslateText:
|
|
|
|
$translate_list = Translate::tran($arr2, $languageInfo['short']);
|
|
|
|
if(empty($translate_list)){
|
|
|
|
if ($i < 3) {
|
|
|
|
$i++;
|
|
|
|
goto TranslateText;
|
|
|
|
}
|
|
|
|
$this->fail('翻译失败,请稍后重试!');
|
|
|
|
}
|
|
|
|
if(count($arr2) == 1){
|
|
|
|
$data[] = [
|
|
|
|
$arr2[0]=>$translate_list
|
|
|
|
];
|
|
|
|
}else{
|
|
|
|
foreach ($arr2 as $k => $v){
|
|
|
|
$data[] = [
|
|
|
|
$v=>$translate_list[$k]
|
|
|
|
];
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return $this->success($data);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :获取图片列表
|
...
|
...
|
|