次の文字列がある場合:
"2013-10-28"
DateTime
そして、次の関数を使用してに変換すると:
new \DateTime("2013-10-28");
時間が設定されていない状態で常にDateTime
表示されます。
2 つのDateTimeが必要です。
- 1 日の始まり、つまり00:00:00を示すもの
DateTime
同じ日付ですが、その日の終わりにある別の23:59:59。
上記の文字列を指定してこれを行うにはどうすればよいですか?
次の文字列がある場合:
"2013-10-28"
DateTime
そして、次の関数を使用してに変換すると:
new \DateTime("2013-10-28");
時間が設定されていない状態で常にDateTime
表示されます。
2 つのDateTimeが必要です。
DateTime
同じ日付ですが、その日の終わりにある別の23:59:59。上記の文字列を指定してこれを行うにはどうすればよいですか?
考えられるすべての複合フォーマットを見てください。
ユースケースでは、MySQL 形式が最も簡単です。
new \DateTime("2013-10-28 00:00:00");
new \DateTime("2013-10-28 23:59:59");
これを試すことができます:
public static Date getDayStartTimeOfTheDate(Date date){
try {
Calendar c = Calendar.getInstance();
c.setTime(date);
c.set(Calendar.AM_PM, 0);
c.set(Calendar.HOUR, 0);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
return parseDate(format(c.getTime()));
} catch (ParseException e) {
}
}
そして終了時には、上記のロジックに基づいてメソッドを書くことができます。