Monday, March 30, 2009

i18n in the LAMP stack

i18n should be done server side.

There are 3 main options for organizing the database schema:
1. Separate column for each language
2. Translation table with columns for each language
3. Translation tables with rows for each language

3 looks to be the most versatile, but 2 is feasible since if requirements are relatively simple.

Mysql will need to be configured to save the data in unicode

Best practices