Google APIs support a limited list of languages. This library provides a way to validate the language parameter in your own Google API library.
Example code:
$googleLibrary = new MyAwesomeGoogleApiLibrary($key);
$languageFactory = new \GoogleSupportedLanguages\LanguageFactory();
$languageCode = 'en';
$language = $languageFactory->create($languageCode);
$googleLibrary->setLanguage($language);
If the provided language code is not part of the supported list, an InvalidArgumentException is thrown.
Also you can then typehint the parameter to the interface \GoogleSupportedLanguages\Language\LanguageInterface:
class MyAwesomeGoogleApiLibrary implements MyAwesomeGoogleApiLibraryInterface;
....
public function setLanguage(\GoogleSupportedLanguages\Language\LanguageInterface $language){
$this->language = $language;
}
....
public function execute() {
...
$parameters['language'] = $this->language->getCode();
....
}
....
}
composer require calin-marian/google-supported-languages