无法将“ Magliette”字符串(意大利语为“ T-shirts”翻译成意大利语)

时间:2019-02-16 19:07:17

标签: php google-translate google-translation-api

发布原因

报告错误

我的目标

我正在使用Google Cloud API Translate Client(https://cloud.google.com/translate/)来转换PHP(v7.0)服务器端应用程序中的某些数据。我的数据始终使用意大利语,因此我需要将其翻译成其他几种语言(法语是其中一种)

重现该错误的步骤:

  1. 下载并安装Google \ Cloud \ Translate \ TranslateClient库
  2. 使用您的projectId初始化新的TranslateClient
  3. 使用以下参数在已启动的TranslateClient上调用“ translate”方法:要翻译的文本:“ Magliette”,源“ it”,目标“ fr”

错误说明:

预期结果为“ T恤”,但返回“ T”。 您可以快速轻松地重现here并将其设置为“ FROM ITALIAN TO FRANCH”的错误,而不是将“ Magliette”放入意大利语文本区域。

我的PHP代码示例:

use Google\Cloud\Translate\TranslateClient;

function translateString(string $string, string $targetLanCodeTwo, string $actualStringLangCodeTwo ): string {

    $translateClient = new TranslateClient([
        'projectId' => 'YOUR_SECRET_PROJECT_ID'
    ]);
    $translatedString = $translateClient->translate($string, [
        'source' => $actualStringLangCodeTwo,
        'target' => strtolower($targetLanCodeTwo),
        'model' => strtolower($targetLanCodeTwo) === 'en' ? 'nmt' : 'base'
    ]);
    return $translatedString['text'];
}
// This should print "T-shirts", but print just "T"
echo translateString('Magliette', 'fr', 'it');

我已经尝试过“ nmt”和“ base”模型,但是预期的结果永远不会出现。

我做错什么了吗?

0 个答案:

没有答案