Отправить причину
Сообщить об ошибке
Моя цель
Я использую Google Cloud API Translate Client (https://cloud.google.com/translate/) для перевода некоторых данных в серверном приложении PHP (v7.0). Мои данные всегда на итальянском языке, и мне нужно перевести их на некоторые другие языки (один из них - Franch)
Шаг для воспроизведения ошибки:
- Загрузите и установите библиотеку Google \ Cloud \ Translate \ TranslateClient
- Инициируйте новый TranslateClient с вашим идентификатором проекта
- Вызвать метод 'translate' для инициированного TranslateClient со следующими параметрами: текст для перевода: 'Magliette', источник 'it', цель 'fr'
Ошибкаописание:
Ожидаемый результат будет "Футболки", но он возвращает "T". Вы можете быстро и легко воспроизвести ошибку, набрав здесь и установив "ИЗ ИТАЛЬЯНСКОГО""ФРАНЦУЗСКИ", а затем положить "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", но ожидаемый результат никогда не приходит.
Я что-то не так делаю?