Qui n'a pas eu besoin un jour d'internationaliser son application ? (c'est à dire de la rendre accessible dans différentes langues)

Pour cela il existe deux facons de le faire en PHP :
1. inclusion du fichier de la langue selectionnée
2. utilisation de gettext

Utilisation de fichier de langue

Pour cela rien de compliqué : nous allons définir des variables qui seront définies pour chaque langue. Ensuite, il ne reste plus qu'à insérer le bon fichier.
Prenons plutot un exemple : dans notre application nous allons définir une variable (pour la convention de nommage, j'utilise toujours un "L_" en début de variable) au lieu de mettre notre texte en dur !

<form method="post" action="essai.php">
 <label for="nom"><?php echo $L_nom; ?></label>
 <input type="text" name="nom" id="nom" size="50" maxlength="200" />
</form>

Ensuite nous allons créer un fichier de langue pour le francais (que nous nommerons fr.php) et nous définirons notre variable.

<?php
     $L_nom  = "Nom de la personne";
?>

Il ne reste alors plus qu'à inclure notre fichier de langue en début de notre fichier où la variable $L_nom est contenu. Ainsi, vous pourrez changer facilement de langue en allant, par exemple chercher dans la base de données, la langue à utiliser pour votre utilisateur !

Utilisation de gettext

Les fonctions gettext implémentent l'API NLS (Native Language Support) qui peut servir à internationaliser vos applications PHP.

Plutôt que de réécrire un tutoriel, en voici un bien fait : http://www.mandragor.org/tutoriels/gettext/0.
Il y a également la documentation GNU : http://www.gnu.org/software/gettext/manual/gettext.html