pro*_*ick 1 php database session static-variables internationalization
我正在编写一个应用程序,我将有许多不同语言的字典值.我知道我可以使用GetText,但是AFAIR文件必须在编辑后编译,我想让用户编辑字典,我不能在服务器上重新编译.mo文件.我不知道将使用多少种语言,因此解决方案必须具有弹性.
我设计了数据库,因此它运行良好,架构看起来很好,但是对于每个字典值都有几个连接,所以解决方案不是太快.
出于这个原因,我想考虑存储一次字典值,并在编辑其中的值后才刷新它.遗憾的是,PHP静态变量无法使用,因为它们在请求结束时死亡.我不想使用会话,因为我将不得不为每个用户进行数据库调用.理想情况下,我想像在Java中一样使用静态变量 - 只要应用程序在JVM中存在,它们就会存在.
对于所有用户(不是每个用户),长时间(不是每个请求)存储一些变量(在我的示例中 - 字典,字典条目等)的最佳解决方案是什么?
我正在考虑创建DictionaryValues
类,类序列化一次,然后每个请求反序列化它.每当有人编辑字典时,对象将被再次序列化并将替换旧的序列化对象.当然,与读取字典值的频率相比,编辑很少发生.
这是一个好的解决方案吗?我应该序列化对象并将其存储在磁盘上还是将其写入数据库?哪一个更快?
也许你找到了更好的解决方案?