post2go / microsoft-translator-service-provider
Silex service provider for using the Microsoft Translator V2 API
v0.5.1
2014-09-24 19:29 UTC
Requires
- post2go/microsoft-translator: 0.5.*
- silex/silex: 1.*
This package is not auto-updated.
Last update: 2024-11-05 03:01:58 UTC
README
By Matthias Noback
Installation
Using Composer, add to composer.json
:
{
"require": {
"post2go/microsoft-translator-service-provider": "dev-master"
}
}
Then using the Composer binary:
php composer.phar install
Register the service provider:
<?php
use MatthiasNoback\Silex\Provider\MicrosoftTranslatorServiceProvider;
$app->register(new MicrosoftTranslatorServiceProvider(), array(
'microsoft_oauth.client_id' => 'YOUR-CLIENT-ID',
'microsoft_oauth.client_secret' => 'YOUR-CLIENT-SECRET',
);
Usage
This service provider wraps the corresponding Microsoft Translator V2 API PHP library
and adds the translator as the service microsoft_translator
to your application.
You need to register your application at the Azure DataMarket and thereby retrieve a "client id" and a "client secret". Copy these values to the right keys in the options array (see above):
Making calls
Translate a string
// in your controller
$translatedString = $app['microsoft_translator']->translate('This is a test', 'nl', 'en');
// $translatedString will be 'Dit is een test', which is Dutch for...
Detect the language of a string
$text = 'This is a test';
$detectedLanguage = $app['microsoft_translator']->detect($text);
// $detectedLanguage will be 'en'
Get a spoken version of a string
$text = 'My name is Matthias';
$spoken = $app['microsoft_translator']->speak($text, 'en', 'audio/mp3', 'MaxQuality');
// $spoken will be the raw MP3 data, which you can save for instance as a file
For more examples, see the README of the PHP library