正在显示
1 个修改的文件
包含
57 行增加
和
36 行删除
| @@ -83,42 +83,63 @@ class TranslateLogic extends BaseLogic | @@ -83,42 +83,63 @@ class TranslateLogic extends BaseLogic | ||
| 83 | } | 83 | } |
| 84 | } | 84 | } |
| 85 | 85 | ||
| 86 | - // $old_key = [];//key值组成数据 | ||
| 87 | - // if($info !== false){ | ||
| 88 | - // $data_read = json_decode($info['data']); | ||
| 89 | - // foreach ($data_read as $k => $v){ | ||
| 90 | - //// if(!in_array($k,$text_array)){ | ||
| 91 | - //// $arr2[] = $k; | ||
| 92 | - //// } | ||
| 93 | - //// $old_key[] = $k; | ||
| 94 | - // $data[] = [$k => $v]; | ||
| 95 | - // } | ||
| 96 | - // }else{ | ||
| 97 | - // $arr2 = array_values(array_diff($text_array, $old_key)); | ||
| 98 | - // } | ||
| 99 | - // if(!empty($arr2)){ | ||
| 100 | - // $i = 0; | ||
| 101 | - // TranslateText: | ||
| 102 | - // $translate_list = Translate::tran($arr2, $languageInfo['short']); | ||
| 103 | - // if(empty($translate_list)){ | ||
| 104 | - // if ($i < 3) { | ||
| 105 | - // $i++; | ||
| 106 | - // goto TranslateText; | ||
| 107 | - // } | ||
| 108 | - // $this->fail('翻译失败,请稍后重试!'); | ||
| 109 | - // } | ||
| 110 | - // if(count($arr2) == 1){ | ||
| 111 | - // $data[] = [ | ||
| 112 | - // $arr2[0]=>$translate_list | ||
| 113 | - // ]; | ||
| 114 | - // }else{ | ||
| 115 | - // foreach ($arr2 as $k => $v){ | ||
| 116 | - // $data[] = [ | ||
| 117 | - // $v=>$translate_list[$k] | ||
| 118 | - // ]; | ||
| 119 | - // } | ||
| 120 | - // } | ||
| 121 | - // } | 86 | + public function getTranslateList(){ |
| 87 | + $data = []; | ||
| 88 | + if($this->param['url'] == 'All'){ | ||
| 89 | + $info = $this->model->read(['url'=>$this->param['url'],'language_id'=>$this->param['language_id'],'type'=>$this->param['type']]); | ||
| 90 | + if(!empty($info) && !empty($info['data'])){ | ||
| 91 | + $translateInfo = json_decode($info['data'],JSON_UNESCAPED_UNICODE); | ||
| 92 | + foreach ($translateInfo as $k => $v){ | ||
| 93 | + $data[] = [$k=>$v]; | ||
| 94 | + } | ||
| 95 | + } | ||
| 96 | + return $this->success($data); | ||
| 97 | + } | ||
| 98 | + // 需要校对路由 | ||
| 99 | + $url = $this->user['domain'] . (($this->param['url'] != '/') ? $this->param['url'] : ''); | ||
| 100 | + // 需要校对语种 | ||
| 101 | + $languageInfo = $this->getLanguage($this->param['language_id']); | ||
| 102 | + // 原始校对内容 | ||
| 103 | + $info = $this->model->read(['url'=>$this->param['url'],'language_id'=>$this->param['language_id'],'type'=>$this->param['type']]); | ||
| 104 | + //获取当前URl的所有文本内容 | ||
| 105 | + $text_array = $this->getUrlRead($url); | ||
| 106 | + // 原始校对程序 | ||
| 107 | + $old_key = [];//key值组成数据 | ||
| 108 | + if($info !== false){ | ||
| 109 | + $data_read = json_decode($info['data'],JSON_UNESCAPED_UNICODE); | ||
| 110 | + foreach ($data_read as $k => $v){ | ||
| 111 | + $old_key[] = $k; | ||
| 112 | + $data[] = [$k => $v]; | ||
| 113 | + } | ||
| 114 | + } | ||
| 115 | + $arr2 = array_values(array_diff($text_array, $old_key)); | ||
| 116 | + if(!empty($arr2)){ | ||
| 117 | + $i = 0; | ||
| 118 | + TranslateText: | ||
| 119 | + $translate_list = Translate::tran($arr2, $languageInfo['short']); | ||
| 120 | + if(empty($translate_list)){ | ||
| 121 | + if ($i < 3) { | ||
| 122 | + $i++; | ||
| 123 | + goto TranslateText; | ||
| 124 | + } | ||
| 125 | + $this->fail('翻译失败,请稍后重试!'); | ||
| 126 | + } | ||
| 127 | + if(count($arr2) == 1){ | ||
| 128 | + $data[] = [ | ||
| 129 | + $arr2[0]=>$translate_list | ||
| 130 | + ]; | ||
| 131 | + }else{ | ||
| 132 | + foreach ($arr2 as $k => $v){ | ||
| 133 | + $data[] = [ | ||
| 134 | + $v=>$translate_list[$k] | ||
| 135 | + ]; | ||
| 136 | + } | ||
| 137 | + | ||
| 138 | + } | ||
| 139 | + } | ||
| 140 | + return $this->success($data); | ||
| 141 | + } | ||
| 142 | + | ||
| 122 | 143 | ||
| 123 | /** | 144 | /** |
| 124 | * @remark :获取图片列表 | 145 | * @remark :获取图片列表 |
-
请 注册 或 登录 后发表评论