Io l'ho fatto per un sito in ASP.Originariamente inviato da bendervinicio
Grazie della risposta.
Io avrei pensato a una pagina php da includere.
Ogni pagina inclusa contiene un array con le voci.
Detto in altre parole: Avrei Una cartella per ogni pagina che contiene i file php con gli array in varie lingue.
Nn so se mi sono spiegato.
Praticamente sarebbe com un db ma senza mysql.
Mi sembra comodo, che dici?
Ho una directory
/Sito/Language/Italiano
/Sito/Language/Inglese
Ed ogni cartella ha dei file con una versione tradotta delle stringhe contenute nelle pagine.
Su ASP creava problemi perchè è più complesso fare una include dinamica.
Con PHP credo sia molto più fattibile; inoltre ha il vantaggio di poter usare anche un array multidimensionale che contiene entrambe le localizzazioni.
Solo che con un array se vuoi stampare "CIAO" devi fare
mentre se memorizzi tutto in un DB hai una struttura più solida (con gli Array devi fare tutto tu a manina e se sbagli nessuno ti dice niente) e con una SELECT trovi direttamente il valore del campo passando la lingua come parametro.Codice PHP:
- Italiano -
$lingua = 'IT';
echo $traduzione[$lingua]['Ciao'];
risultato: Ciao!
- Inglese -
$lingua = 'EN';
echo $traduzione[$lingua]['Ciao'];
risultato: Hello!
Questo parlando di menu e contenuti inseriti dinamicamente....
per quanto riguarda le voci statiche di una pagine (come "Torna alla home page" o cose del genere) invece potrebbe essere più comoda la soluzione degli include.
Nel sito che citavo ho usato infatti gli include per le traduzioni statiche e il DB per quelle dinamiche.
Che mi dite invece della mia questione sulla 'Traduzione' degli elementi o la 'Duplicazione Localizzata' degli elementi?![]()