0

我的网站根据用户设置或浏览器设置(用户尚未设置偏好)更改其区域设置。我正在使用 amline 图表,特别是股票图表,它需要 'MM/DD/YYYY' 或 'DD-MM-YYYY' 中的日期格式,我想图表知道如何理解日期。有很多方法可以根据计算机区域设置格式化日期,但是我找不到获取区域设置格式的方法(如上所述)。

4

1 回答 1

2

Zend 框架带有一个类,Zend_Locale该类依次访问Unicode 区域设置数据标记语言 (LDML)中的一堆 XML 文件。其中包含许多其他内容,本地化日期格式。查看Unicode Common Locale Data Repository (CLDR)了解更多信息。

例如,德语的 XML 文件将包含类似

<dateFormats>
    <dateFormatLength type="full">
        <dateFormat>
            <pattern>EEEE, d. MMMM yyyy</pattern>
        </dateFormat>
    </dateFormatLength>
    <dateFormatLength type="long">
        <dateFormat>
            <pattern>d. MMMM yyyy</pattern>
        </dateFormat>
    </dateFormatLength>
    <dateFormatLength type="medium">
        <dateFormat>
            <pattern>dd.MM.yyyy</pattern>
        </dateFormat>
    </dateFormatLength>
    <dateFormatLength type="short">
        <dateFormat>
            <pattern>dd.MM.yy</pattern>
        </dateFormat>
    </dateFormatLength>
</dateFormats>

现在,我自己还没有使用过它,但是通过简要浏览它,我猜这Zend_Locale_Data::getContent()是您的朋友,应该为您提供所需的所有信息。

如果您不想使用 ZF,您可以使用您选择的 XML 解析器直接访问这些文件(您可能可以在unicode.org.

于 2009-05-17T18:35:18.340 回答