• 締切済み

時刻の減算、ループ

現在時刻、現在からN分前、現在から2×N分前、…というような表示をさせたいのですが、時刻表示をループさせる書き方がわからないです。 EX)「現在時刻を10:26:09:00として」 ・10:26:09:00 ・10:26:08:55 ・10:26:08:50 ↑このような感じで表示させたいのですが…。 宜しくお願いします。

みんなの回答

回答No.2

// N分前(秒で表示) $n = 5*60; $i = 0; // N分の倍数 for($i=0; $i<=10; $i++ ){ print date('m/d H:i', mktime()-($i*$n)) . "\n"; } こんな感じでどうですか? #解説 date('m/d H:i') // 現在時刻を 10/28 09:30 というフォーマットで表示 引数として、システム秒を与えるとその時間を表示 mktime()-($i*$n*60) 現在のシステム秒(mktime())から、N分$nの$i倍引く

回答No.1

<?php $TimeZone = new DateTimeZone("Asia/Tokyo"); $DateTime = new DateTime("now",$TimeZone); for ($i = 0;$i < 5;$i++){ print($DateTime->format("c") . "\n"); $DateTime = $DateTime->sub(new DateInterval("P0DT1M")); } /* 出力結果。質問文の各数字が何を意味するかを質問文で明確に述べていないので、 フォーマットはこちらで勝手に選んだ。 変更したければ、 http://www.php.net/manual/en/datetime.format.php http://www.php.net/manual/en/function.date.php を見ること。 2009-10-28T03:47:05+09:00 2009-10-28T03:46:05+09:00 2009-10-28T03:45:05+09:00 2009-10-28T03:44:05+09:00 2009-10-28T03:43:05+09:00 */ ?>

関連するQ&A