我正在尝试创建一组类来处理本地化(主要是货币部分,还有语言)。
我可以想象逻辑是怎样的,但我不知道用于不同语言和货币的名称。我已经看到有很多ISO标准,我应该选哪一个?
无论如何,这是我想到的逻辑,以防你也可以提供帮助:
我会有一个Money类,包含金额和货币属性。在创建时,对象接收金额和货币(本地化类提供的对象可能?)。您可以添加或乘以金额。 add方法将另一个货币对象作为参数,如果它具有不同的货币,则自动进行转换。 某个地方存储了一个数组,其中包含所有标准名称,例如en_US和USD,它们适当地关联它们,并且还将它们与美元中的等价物相关联作为标量值。 Money对象应该能够以不同的格式打印金额,例如$ 1000或U $ s等。
答案 0 :(得分:4)
答案 1 :(得分:1)
看看Zend Framework的组件Zend_Locale。它为您完成所有工作,无需编写自己的类。
答案 2 :(得分:0)
通常我不会建议镜像.Net,但请查看他们进行本地化的方式。它很容易成为我见过的最好的小规模实现之一。
对于iGoogle的高动态应用程序来说并不是很好,但对于静态表单,货币等标题来说非常棒。