2010-01-29 17 views
0

aura-t-il des performances déclasser de manière significative (ou épuiser le serveur avec des requêtes http), ou peut-être mal avisé, de faire quelque chose comme çaStockage des messages de sortie à l'intérieur des constantes en PHP

echo "<span>enter_username_message</span>"; 

et centraliser ce long constant avec toutes les sorties messages dans un dossier, afin que ceux-ci pourraient être modifiées sans entrer dans le code:

define('enter_username_message','username please'); 

cette façon, quelqu'un qui regarde le site dans sa version espagnole, je pourrais simplement directe php pour obliger tous les sorties message constantes d'un fichier espagnol.

define('enter_username_message','username por favor'); 

qu'en pensez-vous?

+2

Cela semble être une bonne pratique ... ne pas voir un énorme problème là-bas. – AlfaTeK

+0

Oui, je fais aussi de cette façon, c'est bon pour moi .. continuez ... – Avinash

Répondre

2

Vous devriez probablement utiliser gettext: http://us3.php.net/manual/en/book.gettext.php

Il est conçu pour le genre de chose que vous parlez.

Modifier (je déteste PHP ugh,), alors regardez peut-être Apparemment PHP gettext est pas thread-safe à quelque chose comme Zent Traduire avec l'adaptateur gettext, qui est thread-safe: http://framework.zend.com/manual/en/zend.translate.adapter.html

Ma raison pour suggérer l'utilisation de quelque chose gettext est les différents outils qui sont disponibles pour créer et éditer les fichiers gettext .po/.mo, ce qui rend la création de traductions plus facile que de simplement passer par un fichier texte et d'éditer des choses.

+0

en citant: "Pour rappel, ce n'est pas sûr pour les threads et ne fonctionnera pas sur les installations typiques de windows/apache." Et il va sûrement introduire plus de frais généraux que l'idée de l'affiche originale. – AlfaTeK

+0

L'utilisation de la gettext "EXTENSION" est la seule façon d'aller en ce qui concerne la performance IMO et des benchmarks – JasonDavis

+0

cela n'aura aucun effet sur le nombre de requêtes http - encore juste 1 pour charger la page + 1 pour chaque ressource externe. Donc, de ce point de vue, il n'y a pas de problème. – echo