0

私のサイトは、ユーザー設定またはブラウザー設定 (ユーザーが設定していない場所) に応じてロケールを変更します。私は amline チャート、具体的には株価チャートを使用しています。これには、「MM/DD/YYYY」または「DD-MM-YYYY」の日付形式が必要です。チャートは日付を理解する方法を知っていると思います。コンピューターのロケールに応じて日付をフォーマットする方法はたくさんありますが、ロケールのフォーマットを取得する方法が見つかりません (上記のように)。

4

1 に答える 1

2

Zend Frameworkには、Unicode Locale Data Markup Language (LDML)Zend_Localeで多数の 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 パーサーを使用してこれらのファイルに直接アクセスできます (おそらく XML ファイルは のどこかにあるはずですunicode.org)。

于 2009-05-17T18:35:18.340 に答える