IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[CSV] Internationalisation et performances


Sujet :

Langage PHP

  1. #1
    Membre confirmé

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 77
    Points : 463
    Points
    463
    Par défaut [CSV] Internationalisation et performances
    Bonjour, je développe actuellement un jeu en ligne.
    Il est prévu de le traduire dans plusieurs langues. C'est pourquoi dans la première version, nous avons séparé les chaînes de caractères dans des fichiers externes et on les définissait de la manière suivante :
    define("_WELCOME", "Bienvenue");
    Nous avons un nombre assez conséquent de constantes (plusieurs centaines) au moins. Alors nous les avions séparés en de multiples fichiers (un par page environ) car on pensait que PHP chargeait tout ces constantes avec define() dans la mémoire même celles qui ne sont pas utilisées. Est-ce le cas ?
    Après selon la langue du visiteur nous faisions appel aux fichiers de langues adéquats.

    Actuellement, nous réecrivons le code du jeu et nous cherchons alors une meilleure solution. Le critère principal est les performances.
    J'ai entendu parlé de gettext. Qu'en est il niveau performance ?

    Connaissez vous d'autres solutions (à part celles nécessitant une base de donnée) ?
    Merci d'avance pour vos réponses.

  2. #2
    Membre actif Avatar de Mogwaï
    Inscrit en
    Mai 2004
    Messages
    247
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2004
    Messages : 247
    Points : 278
    Points
    278
    Par défaut
    Citation Envoyé par Info-Rital Voir le message
    on pensait que PHP chargeait tout ces constantes avec define() dans la mémoire même celles qui ne sont pas utilisées. Est-ce le cas ?
    Oui c'est le cas.

    Personnellement pour gérer les langues, je me suis fait une petite classe qui lit un fichier CSV qui contient en premiere colonne un mot clé associé à chaque colonne qui represente une langue.
    Je trouve que c'est un bon compromis entre la facilité de mise à jour du fichier par des traducteurs (qui n'y connaissent rien au PHP mais qui savent utiliser excel) et la facilité d'implémentation dans un projet. Pour ce qui est des performances, c'est forcément moins rapide que des define car il faut ouvrir le fichier et le transformer en tableau, mais pour moi ce n'est pas sur ce point que doit se faire l'optimisation.
    Etre à son compte, y'a rien de mieux !

Discussions similaires

  1. [Débutant] Performance datareader export Csv
    Par americ dans le forum C#
    Réponses: 4
    Dernier message: 11/03/2013, 00h29
  2. Réponses: 13
    Dernier message: 18/07/2011, 17h24
  3. Réponses: 9
    Dernier message: 31/01/2006, 22h42
  4. [Tags struts][Performance]Internationalisation
    Par gailuris dans le forum Struts 1
    Réponses: 6
    Dernier message: 15/12/2005, 10h19
  5. [CR] internationalisation d'un report
    Par osoudee dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 24/06/2002, 16h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo