knone / translate-bundle
Translate bundle
Installs: 24
Dependents: 0
Suggesters: 0
Security: 0
Stars: 4
Watchers: 2
Forks: 0
Type:symfony-bundle
Requires
- php: >=5.4
- guzzlehttp/guzzle: ~4.0
- symfony/framework-bundle: >=2.2
Requires (Dev)
- phake/phake: 1.*
- phpunit/phpunit: 4.3.*@dev
This package is not auto-updated.
Last update: 2024-10-22 02:53:36 UTC
README
This bundle for Symfony2 applications, which translate some text in your application using different translator-services
Installation
Download using composer:
php composer.phar require knone/translate-bundle '1.0.*'
Enable the bundle in the kernel:
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new KNone\TranslateBundle\KNoneTranslateBundle(), ); }
Configure the KNoneTranslateBundle
KNoneTranslateBundle have two translator-providers:
- google_web (use http://translate.google.com)
- yandex_api (http://api.yandex.com/translate/)
You need to set default provider in config.yml:
//app/config/config.yml k_none_translate: default_provider: google_web
If you want to use Yandex Api you need set api key (get api key):
//app/config/config.yml k_none_translate: default_provider: yandex_api providers: yandex_api: key: <api_key>
Using the KNoneTranslateBundle
You just can use service k_none_translate.translator. Example:
<?php ... // Some action in controller public function someAction() { /** @var KNone\TranslateBundle\Provider\ProviderInterface $translator */ $translator = $this->get('k_none_translate.translator'); $translation = $translator->translate('hello world', 'en', 'fr'); // you can set 'auto' as source language and translator will detect it //$translation = $translator->translate('hello world', 'auto', 'fr'); $result = (string)$translation; // $result contains 'bonjour tout le monde' $result = $translation->getResult(); // $result contains 'bonjour tout le monde' $source = $translation->getSource(); // $source contains 'hello world' $sourceLanguage = $translation->getSourceLanguage() // $sourceLanguage contains 'en' $resultLanguage = $translation->getResultLanguage() // $resultLanguage contains 'fr' }