合并分支 'master-lyh-edit' 到 'master'
gx 查看合并请求 !606
正在显示
3 个修改的文件
包含
21 行增加
和
3 行删除
| @@ -2,6 +2,7 @@ | @@ -2,6 +2,7 @@ | ||
| 2 | 2 | ||
| 3 | namespace App\Console\Commands\Project; | 3 | namespace App\Console\Commands\Project; |
| 4 | 4 | ||
| 5 | +use App\Helper\Translate; | ||
| 5 | use App\Models\Com\NoticeLog; | 6 | use App\Models\Com\NoticeLog; |
| 6 | use App\Models\Product\Keyword; | 7 | use App\Models\Product\Keyword; |
| 7 | use App\Models\RouteMap\RouteMap; | 8 | use App\Models\RouteMap\RouteMap; |
| @@ -80,6 +81,9 @@ class InitKeyword extends Command | @@ -80,6 +81,9 @@ class InitKeyword extends Command | ||
| 80 | foreach ($keyword as $val) { | 81 | foreach ($keyword as $val) { |
| 81 | $this->output(' keywordID: ' . $val->id . ', title: ' . $val->title); | 82 | $this->output(' keywordID: ' . $val->id . ', title: ' . $val->title); |
| 82 | try { | 83 | try { |
| 84 | + if(contains_russian($val['title'])){ | ||
| 85 | + $val['title'] = Translate::tran($val['title'], 'en'); | ||
| 86 | + } | ||
| 83 | $route = RouteMap::setRoute($val['title'],RouteMap::SOURCE_PRODUCT_KEYWORD, $val->id, $notice['data']['project_id']); | 87 | $route = RouteMap::setRoute($val['title'],RouteMap::SOURCE_PRODUCT_KEYWORD, $val->id, $notice['data']['project_id']); |
| 84 | $val->route = $route; | 88 | $val->route = $route; |
| 85 | $val->save(); | 89 | $val->save(); |
| @@ -145,6 +145,19 @@ if (!function_exists('curl_get')) { | @@ -145,6 +145,19 @@ if (!function_exists('curl_get')) { | ||
| 145 | return $is_array ? json_decode($content, true) : $content; | 145 | return $is_array ? json_decode($content, true) : $content; |
| 146 | } | 146 | } |
| 147 | } | 147 | } |
| 148 | +/** | ||
| 149 | + * @remark :判断是否为俄语 | ||
| 150 | + * @name :contains_russian | ||
| 151 | + * @author :lyh | ||
| 152 | + * @method :post | ||
| 153 | + * @time :2024/6/5 10:38 | ||
| 154 | + */ | ||
| 155 | +function contains_russian($text) { | ||
| 156 | + // 正则表达式匹配俄语字符 | ||
| 157 | + $pattern = '/[А-Яа-яЁё]/u'; | ||
| 158 | + // 使用 preg_match 检查字符串是否匹配正则表达式 | ||
| 159 | + return preg_match($pattern, $text); | ||
| 160 | +} | ||
| 148 | 161 | ||
| 149 | if (!function_exists('curl_c')) { | 162 | if (!function_exists('curl_c')) { |
| 150 | /** | 163 | /** |
| @@ -55,10 +55,11 @@ class RouteMap extends Base | @@ -55,10 +55,11 @@ class RouteMap extends Base | ||
| 55 | public static function generateRoute($title, $source, $source_id, $project_id){ | 55 | public static function generateRoute($title, $source, $source_id, $project_id){ |
| 56 | if(preg_match('/[\x{4e00}-\x{9fa5}]/u', $title)){ | 56 | if(preg_match('/[\x{4e00}-\x{9fa5}]/u', $title)){ |
| 57 | $title = Translate::tran($title, 'en'); | 57 | $title = Translate::tran($title, 'en'); |
| 58 | - }elseif(preg_match('/^[\x{0400}-\x{04FF}]+$/u', $title)){ | ||
| 59 | - $title = Translate::tran($title, 'en'); | 58 | + }else{ |
| 59 | + if(contains_russian($title)){ | ||
| 60 | + $title = Translate::tran($title, 'en'); | ||
| 61 | + } | ||
| 60 | } | 62 | } |
| 61 | - | ||
| 62 | $i=1; | 63 | $i=1; |
| 63 | $sign = generateRoute($title); | 64 | $sign = generateRoute($title); |
| 64 | $length = strlen($sign); | 65 | $length = strlen($sign); |
-
请 注册 或 登录 后发表评论