JeuWeb - Crée ton jeu par navigateur
[PHP] Quelles sont les solutions pour faire un site multilingue ? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [PHP] Quelles sont les solutions pour faire un site multilingue ? (/showthread.php?tid=5876)

Pages : 1 2 3 4


[PHP] Quelles sont les solutions pour faire un site multilingue ? - php_addict - 22-12-2011

Bonjour

j'ouvre un petit débat:

quels sont les solutions pour faire un site multilingue en php ?
quels sont les avantages/inconvénient pour chaque solutions
quels sont les solutions à éviter?

A vos plumesWink


RE: [php] quels sont les solutions pour faire un site multilingue ? - djidi - 22-12-2011

Pour ma part c'est un fichier JSON pour chaque langue, ce qui permet de structurer les traductions et c'est lisible en PHP et en JS.

En BDD, une table langue pour ce qui est nécessaire (pages, objets, classes...)
Par exemple pour la table des pages, une table pages_lang qui contient toutes les données de la page qui varient selon la langue (le titre, les méta...) et dont les clés sont l'ID+lang.

Pour savoir la langue de l'utilisateur je vérifie le paramètre lang dans l'url.
Cela permet d'avoir des urls différentes pour chaque langue.


RE: [php] quels sont les solutions pour faire un site multilingue ? - qwarnant - 22-12-2011

Bonjour

Pour moi, c'est un choix de l'utilisateur à l'inscription, il existe donc un champ "lang" dans la base de données qui prend les valeurs fr, en, nl, ...

Ensuite, à la connexion une variable de $_SESSION est chargée et s'appelle $_SESSION['lang'] et contient le fr, en, nl. Ensuite, dans l'inclusion des fichiers à parser par le moteur de templates, je fais un switch case sur le $_SESSION['lang'] et j'inclus soit le french/lang.php, english/lang.php, etc ...

Simple et efficace je trouve Smile

Cordialement


RE: [php] quels sont les solutions pour faire un site multilingue ? - Sephi-Chan - 22-12-2011

Si je voulais faire un site multi-langue en PHP, j'utiliserais Symfony.
Ça prend très bien en charge l'internationalisation.


RE: [PHP] Quelles sont les solutions pour faire un site multilingue ? - Ter Rowan - 22-12-2011

suite à la discussion juste en dessous, je partirais, mais pas encore testé, en rien ou presque en php :

+ pages statiques directement en html (aide, histoire, ...)
+ page de jeu en html (1 page par langue)
+ dictionnaire de données en javascript (1 ou plusieurs fichiers de ressource par langue)
+ échange ajax uniquement par des id, c'est le javascript qui traduit derrière les id dans la langue qui va bien

=> du coup seuls certains messages spéciaux, non prévus, seraient générés via l'ajax côté serveur (message événement, etc...) le récurent étant porté par le dictionnaire javascript

maintenant ça part du principe d'être sur un jeu "chargement ajax" et non un jeu "chargement de page"






RE: [PHP] Quelles sont les solutions pour faire un site multilingue ? - php_addict - 22-12-2011

merci pour vos réponses

il faut mieux quoi finalement? :

- un parser fait maison avec une bibliotheque perso multilanguage ?
- utilisation de DEFINE
- une librairie genre gettext

je trouve un peu lourd d'utiliser gettext...


RE: [PHP] Quelles sont les solutions pour faire un site multilingue ? - Sephi-Chan - 22-12-2011

Pourquoi lourd ?

Si tes besoins sont très simples, un système maison suffit. Mais Gettext, c'est aussi une gestion des pluriels et de l'interpolation, par exemple.
Après, tu peux gérer ça toi même en ayant une clé pour le singulier et une pour le pluriel et en ajoutant le supporte de l'interpolation.

C'est encore un exemple idéal pour réaliser comme on s'emmerde la vie à coder sans framework. ^^



RE: [PHP] Quelles sont les solutions pour faire un site multilingue ? - php_addict - 23-12-2011

(22-12-2011, 06:31 PM)Sephi-Chan a écrit : C'est encore un exemple idéal pour réaliser comme on s'emmerde la vie à coder sans framework.

je suis encore d'accord avec toi, mais j'adore réinventer la roue, j'y peut rien, je prends mon pieds ainsi:$ . Ceci dit à coder ca va être bien compliqué...




RE: [PHP] Quelles sont les solutions pour faire un site multilingue ? - Sephi-Chan - 23-12-2011

Alors utilise des outils open-source et contribue à ceux que tu préfères ! Là tu apprendras vraiment des trucs, en plus de te rendre utile. C'est hyper didactique et très gratifiant.

Et après tu peux même passer à la vitesse supérieur et créer tes propres outils open-source. C'est le seul moyen de savoir si ta solution a quelque chose dans le ventre. C'est dans ce contexte que tu produiras ton meilleur code, car on fait toujours plus attention quand c'est visible par les autres.

Smile


RE: [PHP] Quelles sont les solutions pour faire un site multilingue ? - patouki - 29-12-2011

et avec codeiµIgniter ?