Salut a tous. Voila je suis debutant en php j'aimerai bien creer un code maison pour automatiser l'internationalisation de mon site voila deja ce que j'ai reuissi a faire. j'aimerai bien traduire une phrase entière, géré les pluriels.
//ma classe internationalisation
<?php
class Localization
{
var $country;
var $language;
function Localization($language,$country)
{
$this->country=$country;
$this->language=$language;
}
function Translate($str)
{
include ($this->language)."_".($this->country).".inc";
return $$str;
}
}
?>
//code test(utilisation)
<?php include "Localization.php" ;?>
<html>
<head>
</head>
<body>
This is in American English
<br>
<br>
<font color="red"><b>
<?php
$locEn = new Localization("en","US");
print($locEn->Translate("helloworld"));
?>
</b></font>
<hr>
This is in Canadian French
<br>
<br>
<font color="darkgreen"><b>
<?php
$locFr=new Localization("fr","CA");
print($locFr->Translate("helloworld"));
?>
</b>
</font>
</body>
</html>
Ce que tu veux faire, c'est un traducteur automatique ?
Je ne connais aucun CMS / framework qui utilise ce genre de chose. Les traductions sont toujours faites a la main, et stockées en bdd (rarement) ou dans des fichiers (plus souvent: yaml, xml, ini ...). Le net regorge d'exemples de ce style, a commencer par github ( https://github.com/Philipp15b/php-i18n, par exemple). Et donc dans ce cas il n'y a pas besoin de "gérer les pluriels" puisque si ta phrase est au pluriel, tu la traduis (et la stockes) au pluriel toi-meme.
Si vraiment tu veux un truc automatique qui fait la trad' a la volée, alors a coder c'est plus l’algorithme qui va te poser problème qu'autre chose. Il y a éventuellement google traduction et son API (payante).
ok merci beaucoup je regarde ton lien ! j'entend pas gerer les pluriels quand par exemples un utilisateurs a un ou plusieurs messages je puisse affiché 2 messages ou 1 message dans toutes les langues