Un modo è questo.
Crei un file per ogni lingua e li fai inquesto modo
Codice PHP:
//language_ita.php
$lingua['frase1'] = 'Frase 1 in italiano';
$lingua['frase2'] = 'Frase 2 in italiano';
...
Codice PHP:
//language_eng.php
$lingua['frase1'] = 'Sentence 1 in English';
$lingua['frase2'] = 'Sentence 2 in English';
...
Nota che le chiavi dell'array non cambiano, cambiano solo i valori!
Ovviamente alle chiavi ti converrà dare dei nomi più esplicativi.
In ogni pagina includi il file language_xxx.php corretto in base ad un valore che metterai in sessione (oppure che sarà nell'url, adesso non è importante).
Per decidere quale file includere farai una cosa così
Codice PHP:
<?php
if ( ! isset($_SESSION['lingua']) )
{
include "language_ita.php"; //lingua di default
}
else
{
include "language_".$_SESSION['lingua'].".php";
}
//$_SESSION['lingua'] deve contenere il codice della lingua da caricare: ita, eng,...
//in modo che sia coerente con quello dei nomi dei file della lingua
//poi nel body della pagina ci saranno cose del tipo
?>
<div><?php echo $lingua['frase1'] ?></div>
<?php
//Dentro quel div comparira il messaggio corrispondente a 'frase1' nella lingua inclusa in precedenza.
?>
Per cambiare lingua basta un link che richiami uno script dove imposti o modifichi il valode della variabile di sessione $_SESSION['lingua'], cos' verrà incluso un altro file della lingua, quello richiesto dall'utente.