7

ドイツ語で日付を表示しようとしましたが、うまくいきません。XAMPPでPHPを使用しています。

これらは私のアプローチです:

function get_Datetime_Now() {
setlocale (LC_TIME, "de_DE");
$tz_object = new DateTimeZone('Europe/Zurich');
$datetime = new DateTime();
$datetime->setTimezone($tz_object);     
return $datetime->format('l, d. F Y  ');
}

echo get_Datetime_Now();

「Sunday, 09. February 2014」を返しますが、「Sonntag, 09. Februar 2014」(ドイツ語) は返しません。

私もこれを試しました:

setlocale(LC_TIME, "de_DE");
echo strftime("%A, %d. %B %Y");

また、「2014 年 2 月 9 日日曜日」も返します。インターネットで多くの例を見ましたが、うまくいきません (少なくとも私の環境では)。

確認すべき設定はありますか?

どんな助けにも感謝します!

事前に Thx、シヴァン

4

4 に答える 4

9

おそらく、UNIX ベースのものとは異なる PHP の言語コードを持つ Windows マシンを使用しているでしょう。

試す:

setlocale(LC_TIME, 'de_DE', 'deu_deu');

'de_DE'これは、最初に(Linux/Unix)に設定しようとし、'deu_deu'コードを Windows (PHP バージョン >= 4.3) のフォールバックとして使用します。

ドイツの PHP ドキュメントの例

于 2014-02-09T15:59:13.097 に答える
2

あなたが試すことができます:

setlocale(LC_TIME, 'de_DE', 'de_DE.UTF-8');
echo strftime("%A, %d. %B %Y");

私のために働いた

于 2014-02-09T16:04:12.020 に答える
0

ロケール パラメーターは、Linux と Windows を比較した他のパラメーターです。

ここを参照してください:

通常、Win では "DEU" または "GERMAN" です。

于 2014-06-26T08:20:05.023 に答える