oytunistrator / google-translate
Free Laravel package for Google Translate REST API with your own API key
Installs: 8
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 6
pkg:composer/oytunistrator/google-translate
Requires
- php: >=5.5.9
- guzzlehttp/guzzle: ^6.1
Requires (Dev)
- phpunit/phpunit: ^5.2
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.