oytunistrator/google-translate

This package is abandoned and no longer maintained. No replacement package was suggested.

Free Laravel package for Google Translate REST API with your own API key

1.0 2021-05-20 09:33 UTC

This package is auto-updated.

Last update: 2021-10-20 11:39:26 UTC


README

Package allows to work with Google Translate API

Installation

Package can be installed using composer by adding to "require" object

"require": {
    "oytunistrator/google-translate"
}

or from console:

composer require oytunistrator/google-translate

Configuration

After the installation, you should add "Dedicated\GoogleTranslate\GoogleTranslateProvider" to providers.

        'providers' => [
                /* 3rd Party Providers */
                TranslatorFarm\GoogleTranslateProvider::class,
         ],

Then you should publish config file to be able to add your Google API key. To publish config you should do:

php artisan vendor:publish \
--provider="TranslatorFarm\GoogleTranslateProvider" --tag=config

After config is published, you will have it in config\google-translate.php of your Laravel project directory

You should change only one line:

    ...
    
    /**
     * Google key for authentication
     */
    'api_key' => 'YOUR-GOOGLE-API-KEY-GOES-HERE',
    
    ...

Usage

To translate text with given source language and target language:

$translator = new TranslatorFarm\Translator;


$result = $translator->setSourceLang('en')
                     ->setTargetLang('ru')
                     ->translate('Hello World');
                           
dd($result); // "Привет мир"                           

To translate html content with given source language and target language:

$translator = new TranslatorFarm\HtmlTranslate;


$result = $translator->setSourceLang('en')
                     ->setTargetLang('ru')
                     ->htmlTranslate('<div>Hello World</div>');
                           
dd($result); // "Привет мир"                           

By default language detection is turned on, so you can translate text without specifying source language.

This will make 2 requests to google API:

  • First request will go to /detect URL and get source language name
  • Second request will make actual translate request and give out result.
$translator = new TranslatorFarm\Translator;


$result = $translator->setTargetLang('ru')
                     ->translate('Hello World');
                           
dd($result); // "Привет мир"                           

You can also use function to only detect text's source language:


$result = $translator->detect('Hello World');

dd($result); // "en"

License

This repository code is open-sourced software licensed under the MIT license.