From 31b40da5961c02a76ad531d85f874136c19041ec Mon Sep 17 00:00:00 2001 From: "Thibault G." Date: Fri, 4 Jul 2025 18:04:31 +0200 Subject: [PATCH 1/3] perf: add the cache_dir parameter --- src/TranslationDriver/SymfonyTranslationDriver.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/TranslationDriver/SymfonyTranslationDriver.php b/src/TranslationDriver/SymfonyTranslationDriver.php index 41626dd8..2793f090 100644 --- a/src/TranslationDriver/SymfonyTranslationDriver.php +++ b/src/TranslationDriver/SymfonyTranslationDriver.php @@ -19,9 +19,9 @@ class SymfonyTranslationDriver implements TranslationDriverInterface */ private $locale = 'en'; - public function __construct() + public function __construct(?string $cacheDirectory = null) { - $this->translator = new Translator($this->locale); + $this->translator = new Translator($this->locale, cacheDir: $cacheDirectory); $this->translator->addLoader('mo', new MoFileLoader()); } From 3bc26d74813df4faa3745c8cd706d1eb741f5129 Mon Sep 17 00:00:00 2001 From: "Thibault G." Date: Fri, 4 Jul 2025 18:09:41 +0200 Subject: [PATCH 2/3] docs: Add instructions to use the cache directory --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 1dd72229..98d65344 100644 --- a/README.md +++ b/README.md @@ -138,6 +138,14 @@ $isoCodes = new IsoCodesFactory(null, new GettextExtensionDriver()); // symfony driver $driver = new SymfonyTranslationDriver(); + +// You can also specify a cache directory for better performance. If you are +// using the SymfonyTranslationDriver within a Symfony project, you can inject +// the `%kernel.cache_dir%/translations` value. +$cacheDir = '...'; + +$driver = new SymfonyTranslationDriver($cacheDir) + $driver->setLocale('uk_UA'); $isoCodes = new IsoCodesFactory( From d85104a06ceec9127bcd9463bb42e9aaef820b16 Mon Sep 17 00:00:00 2001 From: "Thibault G." Date: Sun, 6 Jul 2025 14:40:26 +0200 Subject: [PATCH 3/3] refactor: Adapt the code for PHP 7.1 --- src/TranslationDriver/SymfonyTranslationDriver.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/TranslationDriver/SymfonyTranslationDriver.php b/src/TranslationDriver/SymfonyTranslationDriver.php index 2793f090..6ff144aa 100644 --- a/src/TranslationDriver/SymfonyTranslationDriver.php +++ b/src/TranslationDriver/SymfonyTranslationDriver.php @@ -21,7 +21,7 @@ class SymfonyTranslationDriver implements TranslationDriverInterface public function __construct(?string $cacheDirectory = null) { - $this->translator = new Translator($this->locale, cacheDir: $cacheDirectory); + $this->translator = new Translator($this->locale, null, $cacheDirectory); $this->translator->addLoader('mo', new MoFileLoader()); }