11

次の文字列がある場合:

"2013-10-28"

DateTimeそして、次の関数を使用してに変換すると:

new \DateTime("2013-10-28");

時間が設定されていない状態で常にDateTime表示されます。

2 つのDateTimeが必要です。

  • 1 日の始まり、つまり00:00:00を示すもの
  • DateTime同じ日付ですが、その日の終わりにある別の23:59:59

上記の文字列を指定してこれを行うにはどうすればよいですか?

4

3 に答える 3

9

考えられるすべての複合フォーマットを見てください。

ユースケースでは、MySQL 形式が最も簡単です。

new \DateTime("2013-10-28 00:00:00");
new \DateTime("2013-10-28 23:59:59");
于 2013-10-29T09:50:17.233 に答える
0

これを試すことができます:

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) {

    }
}

そして終了時には、上記のロジックに基づいてメソッドを書くことができます。

于 2013-10-29T09:51:16.720 に答える