doc:appunti:prog:gettext
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| doc:appunti:prog:gettext [2008/04/15 01:18] – external edit 127.0.0.1 | doc:appunti:prog:gettext [2018/12/04 11:32] (current) – [gettext con PHP] niccolo | ||
|---|---|---|---|
| Line 18: | Line 18: | ||
| </ | </ | ||
| + | ====== Compilazione e decompilazione del file .mo ====== | ||
| + | |||
| + | Installare il pacchetto Debian **gettext**. | ||
| + | |||
| + | Se si esegue la traduzione con un client tipo **'' | ||
| + | |||
| + | < | ||
| + | msgfmt -o default.mo default.po | ||
| + | </ | ||
| + | |||
| + | Se è necessario è possibile **decompilare** il file **'' | ||
| + | |||
| + | < | ||
| + | msgunfmt default.mo > default.po | ||
| + | </ | ||
| + | ====== gettext con PHP ====== | ||
| + | |||
| + | Per utilizzare le funzioni **'' | ||
| + | |||
| + | <code php> | ||
| + | function my_setlocale() { | ||
| + | setlocale(LC_ALL, | ||
| + | bindtextdomain(' | ||
| + | textdomain(' | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Nella stessa directory del programma si deve preparare la gerarchia di directory con i file di traduzione: | ||
| + | |||
| + | < | ||
| + | ├─ my_project | ||
| + | │ └─ locale | ||
| + | │ | ||
| + | │ | ||
| + | │ | ||
| + | │ | ||
| + | </ | ||
| + | |||
| + | In ciascuna directory '' | ||
| + | |||
| + | Inoltre ricordarsi di: | ||
| + | |||
| + | - Creare i locale necessari con **'' | ||
| + | - Se si sono **aggiornati i locale** disponibili, | ||
| + | - Se si è **modificato un file '' | ||
| + | - Nel caso in cui il server sia **Nginx** con **php5-fpm** in modalità **FastCGI socket**, può essere necessario riavviare il servizio **php5-fpm** invece di nginx. | ||
| + | - In alcuni casi la funzione setlocale() vuole la sigla comprensiva di encoding, ad esempio per il cinese semplificato è necessario usare **'' | ||
doc/appunti/prog/gettext.1208215082.txt.gz · Last modified: (external edit)
