X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FCore%2FL10n.php;h=24be0109554b2e4ba0a02e98502ffbddc4a83e2a;hb=3e797547a37f8c8f22e88965b4a4d278bcc192e0;hp=be19d546d08886bffeb0674ffdbef25baeb42ce6;hpb=7158aa7ded17a3bb563cb44d4597524bab8caa22;p=friendica.git diff --git a/src/Core/L10n.php b/src/Core/L10n.php index be19d546d0..24be010955 100644 --- a/src/Core/L10n.php +++ b/src/Core/L10n.php @@ -115,12 +115,12 @@ class L10n while ($p = dba::fetch($addons)) { $name = $p['name']; if (file_exists("addon/$name/lang/$lang/strings.php")) { - include("addon/$name/lang/$lang/strings.php"); + include "addon/$name/lang/$lang/strings.php"; } } if (file_exists("view/lang/$lang/strings.php")) { - include("view/lang/$lang/strings.php"); + include "view/lang/$lang/strings.php"; } } @@ -132,24 +132,29 @@ class L10n * string interpolation (sprintf) with additional optional arguments. * * Usages: - * - t('This is an example') - * - t('URL %s returned no result', $url) - * - t('Current version: %s, new version: %s', $current_version, $new_version) + * - L10n::t('This is an example') + * - L10n::t('URL %s returned no result', $url) + * - L10n::t('Current version: %s, new version: %s', $current_version, $new_version) * * @param string $s + * @param array $vars Variables to interpolate in the translation string * @return string */ - public static function t($s) + public static function t($s, ...$vars) { $a = get_app(); + if (empty($s)) { + return ''; + } + if (x($a->strings, $s)) { $t = $a->strings[$s]; $s = is_array($t) ? $t[0] : $t; } - if (func_num_args() > 1) { - $args = array_slice(func_get_args(), 1); - $s = @vsprintf($s, $args); + + if (count($vars) > 0) { + $s = sprintf($s, ...$vars); } return $s; @@ -165,8 +170,8 @@ class L10n * is performed using the count as parameter. * * Usages: - * - tt('Like', 'Likes', $count) - * - tt("%s user deleted", "%s users deleted", count($users)) + * - L10n::tt('Like', 'Likes', $count) + * - L10n::tt("%s user deleted", "%s users deleted", count($users)) * * @global type $lang * @param string $singular @@ -184,9 +189,10 @@ class L10n if (is_array($t)) { $plural_function = 'string_plural_select_' . str_replace('-', '_', $lang); if (function_exists($plural_function)) { - $plural_function = 'stringPluralSelectDefault'; + $i = $plural_function($count); + } else { + $i = self::stringPluralSelectDefault($count); } - $i = $plural_function($count); $s = $t[$i]; } else { $s = $t;