On Fri, 2007-01-26 at 21:25 +0100, Otto Wyss wrote: > Paul Novitski wrote: > > I formulated my question in general since I couldn't find an other > message here about supporting multiple languages. > > > http://www.w3.org/International/articles/ > > > > http://www.w3.org/TR/i18n-html-tech-lang/ > > > > http://php.net/setlocale > > > Thanks a lot, these are good points for reading. > > > > 1) Switching language downloads a new version of the current page, > > generally with the same markup but new text. Example: > > http://partcon.ca/ > > > I'll favor this way especially if several languages have to be provided. > > > In both cases I store the text in database tables that contain a > > language field I can select on to match the user's request. > > > I wonder if retrieving static texts from the database draws too much > performance. I know from somebody who stores texts in large data arrays > an uses shared memory, yet I haven't figured it out how. Sure it does, but you can accumulate all the retrieved texts for a page and cache them so subsequent hits only require a query for the cached entries. If the page has some translations that may or may not show up depending on certain values, then you can retrieve the cache, update the cache with each translation not previously cached and then re-store the cache. After a while you'll only make 1 query (2 if you're sloppy and don't check a dirty bit for if the cache actually changed :) Cheers, Rob. -- .------------------------------------------------------------. | InterJinn Application Framework - http://www.interjinn.com | :------------------------------------------------------------: | An application and templating framework for PHP. Boasting | | a powerful, scalable system for accessing system services | | such as forms, properties, sessions, and caches. InterJinn | | also provides an extremely flexible architecture for | | creating re-usable components quickly and easily. | `------------------------------------------------------------' -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php