私はこの日時を文字列として持っています:Thu、16 Aug 2012 13:17:25 +0200
Donnerstag, 16.08.2012 13:17:25 (ドイツ語形式) になるように再フォーマットしたい。format 関数を試しましたが、エラーが発生しました。どうやってやるの?
私はこの日時を文字列として持っています:Thu、16 Aug 2012 13:17:25 +0200
Donnerstag, 16.08.2012 13:17:25 (ドイツ語形式) になるように再フォーマットしたい。format 関数を試しましたが、エラーが発生しました。どうやってやるの?
setlocale関数の使用法を確認する必要があります。詳細については、 http://php.net/manual/en/function.setlocale.phpを参照してください。
ロケールをインストールする必要があります。このコードが機能しない場合(たとえば、すべてが同じである場合)、システムにロケールがないため、最初にロケールを整理する必要があります。
setlocale(LC_TIME, "C");
echo strftime("%c") . PHP_EOL;
setlocale(LC_TIME, 'be_NL');
echo strftime("%c") . PHP_EOL;
setlocale(LC_TIME, 'de_DE');
echo strftime("%c") . PHP_EOL;
strftimeは、ロケールの使用をサポートする関数です。たとえば、選択した言語での出力を担当します。一部の日付関連関数はこれをサポートしていませんが、php.netでそれらをチェックすると、該当する場合はロケールサポートが記載されます。
date('format', strtotime('Thu, 16 Aug 2012 13:17:25 +0200'));
また
$date = new DateTime('Thu, 16 Aug 2012 13:17:25 +0200');
$date->format('formatstring');