[TYPO3-core] RFC: #2731: Improved caching of locallang
Michael Stucki
michael at typo3.org
Mon Feb 4 15:13:25 CET 2008
Hi Martin,
I'm all for adding this feature, however, you seem to have mixed up parts of
your changes with changes which I made yesterday. Please check this
carefully and don't overwrite anything of it.
If you manage to send me a cleaned patch, I would like to give it a
wildcard, meaning you can commit it, and I'll review it later...
- michael
Martin Kutschker wrote:
> Hello everybody!
>
> This is a SVN patch request.
>
> Type: Improvement
>
> Bugtracker references: http://bugs.typo3.org/view.php?id=2731
>
> Problem: all preprocessiing of localized strings (incl. the caching) is
> done in the "native" character set of the language. That means that
> TYPO3 will (especially for XML files) do a constant conversion from one
> charset to another (most likely from iso-8859-1 to utf-8). This is a
> performance hog.
>
> Solution: hold all localized strings internally (and in the cache files)
> in the required charset. Do any conversion only once, ie when building
> up the cache. In the BE the charset is detetmined by the language or
> forceCharset, in the FE it's also possible to override it further via
> config.renderCharset. t3lib_div::readLLfile() will auto-detect the
> charset (from forceCharset and $lang), but has got an optional charset
> argument (used in the FE for forceCharset).
>
> Notes: This is a change from the old internal behaviour. Now all the
> strings are correct at once (after loading from file) without the need
> for further processing.
>
> Warning: I have started this patch a long time ago for the BE. This part
> worked well. The part for the FE I have written right now (in the
> night). This part is not so well tested.
>
> As the diff is nearly unreadable please test with various setups. Use
> languages with different charset, set and unset forceCharset, fiddle
> with renderCharset. In typo3temp/llxml you'll find a cache file for each
> locallang.php, language and charset.
>
> Masi
--
Use a newsreader! Check out
http://typo3.org/community/mailing-lists/use-a-news-reader/
More information about the TYPO3-team-core
mailing list