Newsgroup: it.comp.www.php
Titolo: sito multilingua

Salve a tutti scrivo per ricevere qualche consiglio.
devo creare un sito multi lingua e mi si sono presentate in mente due
possibilità
-utilizzare le funzioni di traduzione tramite i file .mo utilizzando
quindi il motore del php per effettuare ricerche all'interno del file
.mo (gettext per intenderci)
Es.:
print _("text1");
risultato:
IT
come ti chiami
En
whats your name
Ecc..
-utilizzare dei file di inclusione con all'interno delle define con
tutti i testi da tradurre
la mia domanda è:
Vorrei sapere quale dei due sistemi citati sopra è piu ottimizzato ed
efficente, in quanto il primo sistema permette di estrapolare solo i
testi presenti nella pagina che l'utente ha richiesto al server
il secondo sistema invece include a priori tutte le define situate nel
file di lingua (Es.: langIT.inc oppure langEN.inc oppure Ecc...Ecc...)
di conseguenza con un sito con molteplici contenuti potrebbe diventare
un'operazione pesante e poco ottimizzata il problema è che non so se
il primo sistema risulti piu pesante per altri motivi (magari pesante
il processo di ricerca all'interno del file oppure non so, pesante il
motore di interpretazione degli hash presenti nel file insomma per
altri motivi che potrete dirmi voi)
Grazie anticipatamente per tutti consigli.

 altri motivi che potrete dirmi voi)
Per un discorso di flessibilita' e di performance IMHO ti conviene
utilizzare dei file inclusi, un sistema di caching ed un acceleratore
di bytecode.
-- 
I am what I am, I do what I can
Do. Or do not. There is not try.

Cosa intendi per IMHO e dove trovo un sistema di caching ed un
acceleratore di bytecode.
e poi se ho capito bene mi hai detto che sarebbe piu ottimizzato
strutturare il tutto con file di inclusione contenenti tutte le define?

Cosa intendi per IMHO e dove trovo un sistema di caching ed un
acceleratore di bytecode.


 define?
[mi quoto]
Per un discorso di flessibilita' e di performance IMHO ti conviene
utilizzare dei file inclusi ...
[/mi quoto]
P.S. 
Per favore, quota decentemente.
P.P.S.
Si puo' fare anche su Google Groups, basta volerlo.


quello che dici non risulta essere vero:
http://mel.melaxis.com/devblog/2006/04/10/benchmarking-php-localization-is-gettext-fast-enough/
Ciao Bello

portal...@gmail.com
 wrote:

[mi quoto]
Per un discorso di flessibilita' e di performance IMHO ti conviene
utilizzare dei file inclusi, un sistema di caching ed un acceleratore
di bytecode.
[/mi quoto]
[quoto il sito da te indicato]
I wrote a version using the gettext PHP extension (”gettext Ext.”), one
using PHP-gettext (”gettext PHP”, a gettext implementation written in
pure PHP) and a version that does not use gettext at all, instead it
uses an array that contains all the translations (”String ID”).
[/quoto]
Il benchmark indicato NON mette a confronto l'uso di costanti ma solo
l'uso di un array con indici testuali (notoriamente piu' lento di altri
metodi).
Inolte:
[quoto il sito da te indicato]
the downside is that you have to restart the webserver when you change
a locale file
[/quoto]
Cosa che, in quanto a flessibilita', e' a dir poco inusabile
(sopratutto in hosting). Inoltre nel benchmark indicato NON si fa
menzione alcuna dell'utilizzo di sistemi di caching (al di fuori di
quello utilizzato dall'estensione) o di acceleratori di bytecode.
Se si desidera un sistema flessibile (per esempio che non richieda di
riavviare il webserver quando si cambiano i file di locale) e con buone
prestazioni, sono convinto che sia piu' valido utilizzare file esterni
con costanti (non array con indici testuali), un sistema di caching ed
un acceleratore di bytecode.
P.S.
Per favore, quota decentemente.
-- 


 quello che dici non risulta essere vero:
[cut]
Perdonalo... non sa quel che dice. :)
ciò che dice Setec (per quanto riguarda robe tecniche, per altro non so :p) 
non è Vangelo, ma è qualcosa di molto vicino. :)
Simpaticamente per dirti che di lui ti puoi fidare ;)
ciao,
Luca(riello) 

Simpaticamente per dirti che di lui ti puoi fidare ;)
ok ragazzi scusate dell'arroganza.
è che sono veramente indeciso e non so quale sistema adottare in
quanto il sito sarà composto da moltissimi testi, di conseguenza ho
paura che con il sistema delle define in file esterni risulti pesante.
Poi le comunity su questo discorso sembrano molto indecise, ci sono
persone che dicono che è molto piu ottimizzato il gettext altre che
dicono che sono piu ottimizzati file esterni con costanti contenenti
testo.
Non ci sto capendo piu nulla.
Poi comunque pensadoci bene un file contenente n costanti ha un peso
perenne allocato in memoria,che viene ogni volta ricaricato e quindi
incluso all'interno di ogni pagina visualizzata dall'utente.
Il sistema con le gettext no in quanto vengono elaborate e ricercate
nel mo solo i testi che si trovano nella x pagina che l'utente sta
visualizzando.
Comunque se ritenete che quello che sto dicendo sia falso, vi prego di
dirmelo in modo che possa trovare una soluzione ottimale a tutto questo
Grazie e scusami ancora
Cordiali Saluti

Cordiali Saluti
Io non ne ho la minima idea.
Setec ha gią dato un parere... se non ti fidi al 100% puoi googleggiare su 
quel che dice :)
ciao,
Luca(riello)