イベント カレンダーを作成し、開始時刻を 2009-09-25 15:00:00 の形式で PHP に渡します。期間も同様に渡されます。これは、60 分または 3 時間の形式である場合があります。時間から分への変換は問題ではありません。確立された開始点に時間を追加して、終了時間を正しくフォーマットするにはどうすればよいですか?
4666 次
3 に答える
9
バージョン番号が十分に高い場合の簡単な方法:
$when = new DateTime($start_time);
$when->modify('+' . $duration);
echo 'End time: ' . $when->format('Y-m-d h:i:s') . "\n";
于 2009-08-23T16:44:52.803 に答える
8
strtotime()を使用すると、現在の時刻(2009-09-25 15:00:00)をタイムスタンプに変換してから(60 * 60 * 3 = 3hrs)をタイムスタンプに追加できます。最後に、必要な時間に変換し直します。
//Start date
$date = '2009-09-25 15:00:00';
//plus time
$plus = 60 * 60 * 3;
//Add them
$time = strtotime($date) + $plus;
//Print out new time in whatever format you want
print date("F j, Y, g:i a", $time);
于 2009-08-23T16:46:42.223 に答える
0
As an addendum to @Xeoncross's good strtotime
answer, strtotime()
supports formats like "2009-09-25 +3 hours", "September 25 +6 days", "next Monday", "last Friday", "-15 minutes", etc.
于 2009-08-23T17:04:16.133 に答える