Symfony2是否将所有翻译加载到内存中?

时间:2013-01-14 16:06:35

标签: php symfony internationalization

Symfony2将翻译存储在缓存中(例如app/cache/{dev|prod}/translations/catalogue.fr.php),无论使用何种提供程序。

缓存中的这个文件只定义了一个数组,其中键例如是英语,而值是另一种语言。

这是否意味着随着翻译字符串数量的增长,此数组将随着时间无限增长? 如果我翻译了10.000个字符串,这是否意味着每个请求都会在内存中加载这个10.000数组?

1 个答案:

答案 0 :(得分:1)

是的,这就是PHP的工作原理。 Symfony将只查找“缓存”数组中的段键,当然这必须加载到内存中。

更详细地说,here是ArrayLoader类,它负责从数组加载转换段。