0

PHP 5.3.18 を使用しています。

次の 2 つの変数を次の 5 つの出力形式に変換する最良の方法は何ですか? $date は、標準の MySQL 日時および日付列から派生していることに注意してください。ただし、MySQL を使用してそれらをフォーマットしたくありません。

$date='2013-12-25 10:51:54'
$date='2013-12-25'

12/25/2013
Week 52 of year 2013
Month 12 of year 2013
Quarter 4 of year 2013
2013

次の 2 つの解決策のいずれかを使用できますが、一方が他方よりも優れているかどうか、またはより優れた解決策が存在するかどうかはわかりません。

echo(date("m/d/Y", strtotime($date)));

$dtime = new DateTime($date);
echo($dtime->format("m/d/Y"));

ありがとう

編集 - これが私がやったことです。

$value=$date->format("m/d/Y");break;   // 12/25/2013
$value='Week '.$date->format("w").' of year '.$date->format("Y");break;   // Week 52 of year 2013
$value=$date->format("F").' '.$date->format("Y");break;   // December 2013
$value='Quarter '.ceil($date->format("n")/3).' of year '.$date->format("Y");break;   // Quarter 4 of year 2013
$value=$date->format("Y");break;   // 2013
4

1 に答える 1

0

この場合、(パフォーマンスを考慮して)日付関数を使用する方が良いでしょう。

より複雑な操作が必要な場合もあります。その場合は、DateTime クラスの方が適している場合があります (より便利で読みやすいコードであることは確かです)。

それは私が思うすべてです。

于 2013-01-07T18:06:53.963 に答える