composants locales - yamsuz/damix GitHub Wiki
- Les locales**
\damix\engines\locales\Locale::get('monModule~monFichier.maLocale', array('param1', 'param2'));
Le fichier des locales est de la forme XML:
<?xml version="1.0" encoding="UTF-8"?>
<compiler version="1.0" driver="locale">
<locale name="maLocale">Ma traduction param2 : %2$s, param1 : %1$s</locale>
</compiler>
Le nom du fichier est "[monFichier].UTF-8.xml", il se trouve dans le dossier de la langue des locales
-modules
-[monModule]
- locales
- fr_FR
- [monFichier].UTF-8.xml
Et il faut donner les paramètres dans l'ordre d'apparition des %s. En fait, la chaîne est traitée par la fonction sprintf de php, donc vous avez toutes les possibilités syntaxiques de sprintf.
En particulier, il se peut que l'ordre d'insertion des paramètres change d'une langue à une autre. Plutôt donc que de modifier l'ordre des paramètres quand vous appelez Locale, vous indiquez quel paramètre va à quel endroit dans la chaîne localisée, au moyen de la syntaxe %x$s où x est un nombre d'ordre.
Si vous désirez changer la langue de l'utilisateur. Vous pouvez utiliser la fonction "set( string $section, string $name, string $value ) : void"
$config = \damix\engines\settings\Setting::get('default');
$config->set( 'general', 'langue', 'fr_FR' );