SismaFramework è progettato per supportare applicazioni multilingua fin da subito. Il sistema di internazionalizzazione (spesso abbreviato in "i18n") ti permette di definire stringhe di testo in più lingue e di visualizzare quelle corrette in base alla configurazione.
Il meccanismo è semplice e automatico. Quando si utilizza Render::generateView() per renderizzare una vista, il framework esegue i seguenti passaggi:
LANGUAGE nel file Config/config.php (es. it_IT).Application/Locales/ di ogni modulo registrato. Il framework supporta sia file .php che .json.
L'unica configurazione richiesta è impostare la lingua desiderata nel file Config/config.php.
// in Config/config.php
const LANGUAGE = 'it_IT'; // o 'en_US', 'fr_FR', ecc.
Puoi definire le tue traduzioni usando file PHP o JSON. Le chiavi sono gli identificatori delle stringhe e i valori sono le traduzioni.
Locales nel tuo modulo, se non esiste.it_IT.php o it_IT.json).
MyBlog/Application/Locales/it_IT.php
<?php
return [
'welcomeTitle' => 'Benvenuto nel nostro Blog!',
'editPost' => 'Modifica Articolo',
'createNewPost' => 'Crea un nuovo articolo',
'formSaveButton' => 'Salva Modifiche',
];
MyBlog/Application/Locales/en_US.json
{
"welcomeTitle": "Welcome to our Blog!",
"editPost": "Edit Post",
"createNewPost": "Create a new post",
"formSaveButton": "Save Changes"
}
Poiché il file di lingua viene incluso automaticamente, puoi accedere alle traduzioni come se fossero normali variabili PHP.
MyBlog/Application/Views/post/form.php
<h2><?= $edit_post ?></h2>
<form method="post">
<!-- ... campi del form ... -->
<button type="submit"><?= $formSaveButton ?></button>
</form>
Cambiando il valore della costante LANGUAGE in config.php da it_IT a en_US, la stessa vista mostrerà automaticamente il testo in inglese.
Indice | Precedente: Gestione dei Form | Successivo: Gestione degli Asset Statici
Se hai trovato errori o vuoi suggerire miglioramenti, apri una issue su GitHub.
Report Issue Edit on GitHub