diff options
| author | 2023-04-29 20:08:36 +0200 | |
|---|---|---|
| committer | 2023-04-29 20:08:36 +0200 | |
| commit | 49000ca587590dbc4ca6f5e59697163f2ff8ce88 (patch) | |
| tree | f6c3467e70d0fa9ea72a6c3e16a0317f8b189729 /cli | |
| parent | 2199df8ad7e9297f523614115bb323585e0dba83 (diff) | |
phpstan level 9 for check.translation.php (#5353)
* phpstan level 7 for check.translation.php
* Fixes
---------
Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
Diffstat (limited to 'cli')
| -rwxr-xr-x | cli/check.translation.php | 18 | ||||
| -rwxr-xr-x | cli/manipulate.translation.php | 7 |
2 files changed, 15 insertions, 10 deletions
diff --git a/cli/check.translation.php b/cli/check.translation.php index 59f59f94b..34b43244f 100755 --- a/cli/check.translation.php +++ b/cli/check.translation.php @@ -9,11 +9,13 @@ require_once __DIR__ . '/i18n/I18nUsageValidator.php'; $i18nFile = new I18nFile(); $i18nData = new I18nData($i18nFile->load()); -$options = getopt("dhl:r"); +/** @var array<string,string>|false $options */ +$options = getopt('dhl:r'); -if (array_key_exists('h', $options)) { +if (!is_array($options) || array_key_exists('h', $options)) { checkHelp(); } + if (array_key_exists('l', $options)) { $languages = array($options['l']); } else { @@ -23,17 +25,16 @@ $displayResults = array_key_exists('d', $options); $displayReport = array_key_exists('r', $options); $isValidated = true; -$result = array(); -$report = array(); +$result = []; +$report = []; foreach ($languages as $language) { if ($language === $i18nData::REFERENCE_LANGUAGE) { $i18nValidator = new I18nUsageValidator($i18nData->getReferenceLanguage(), findUsedTranslations()); - $isValidated = $i18nValidator->validate() && $isValidated; } else { $i18nValidator = new I18nCompletionValidator($i18nData->getReferenceLanguage(), $i18nData->getLanguage($language)); - $isValidated = $i18nValidator->validate() && $isValidated; } + $isValidated = $i18nValidator->validate() && $isValidated; $report[$language] = sprintf('%-5s - %s', $language, $i18nValidator->displayReport()); $result[$language] = $i18nValidator->displayResult(); @@ -69,9 +70,12 @@ function findUsedTranslations(): array { $directory = new RecursiveDirectoryIterator(__DIR__ . '/..'); $iterator = new RecursiveIteratorIterator($directory); $regex = new RegexIterator($iterator, '/^.+\.(php|phtml)$/i', RecursiveRegexIterator::GET_MATCH); - $usedI18n = array(); + $usedI18n = []; foreach (array_keys(iterator_to_array($regex)) as $file) { $fileContent = file_get_contents($file); + if ($fileContent === false) { + continue; + } preg_match_all('/_t\([\'"](?P<strings>[^\'"]+)[\'"]/', $fileContent, $matches); $usedI18n = array_merge($usedI18n, $matches['strings']); } diff --git a/cli/manipulate.translation.php b/cli/manipulate.translation.php index b52451681..947739384 100755 --- a/cli/manipulate.translation.php +++ b/cli/manipulate.translation.php @@ -5,11 +5,12 @@ require_once __DIR__ . '/i18n/I18nData.php'; require_once __DIR__ . '/i18n/I18nFile.php'; require_once __DIR__ . '/../constants.php'; -/** @var array<string,string> $options */ -$options = getopt("a:hk:l:o:rv:"); +/** @var array<string,string>|false $options */ +$options = getopt('a:hk:l:o:rv:'); -if (array_key_exists('h', $options)) { +if (!is_array($options) || array_key_exists('h', $options)) { manipulateHelp(); + exit(); } if (!array_key_exists('a', $options)) { |
