私はこの変数を持っています:
$timestamp = strftime("%Y-%m-%d %h:%M:%S %a", time ());
単純に 3 時間を追加してエコーアウトしたいだけです。
60 * 60 * 3 メソッドまたはハードコード「+ 3 時間」を実行できる方法を見てきました。
この結果を得る最良の方法は何ですか?
最良の方法は、より読みやすいと思われるものです。次の式は同じです。
time() + 3 * 60 * 60
strtotime('+3 hours')
私はいつもこのようにします
$current_time = date('Y-m-d H:i:s');
$new_time = strtotime($current_time . "+3hours");
echo $new_time;
また
$new_time = mktime(date('H')+3, 0, 0, date('m'), date('d'), date('Y'));
$new_time = date('Y-m-d H:i:s', $new_time);
echo $new_time;
$timestamp = strftime("%Y-%m-%d %h:%M:%S %a", time() + 3*60*60)
3*60*60
最善の方法です
を使用DateTime::modify
して時間を追加できますが、私はただtime()+10800
.
$time = new DateTime("+ 3 hour");
$timestamp = $time->format('Y-M-d h:i:s a');
明確かつ簡潔:)
「モダン」に行きたい場合:
$d = new DateTime();
$d->add(new DateInterVal('P3H'));
$timestamp = $d->format('Y-M-d h:i:s a');
refs: DateTimeオブジェクト