基準が現在じゃないときは結構使えそう。
メモメモ。
<?php
function print_date($str) {
$time = strtotime('2012-02-22 22:22:22');
echo date('Y-m-d H:i:s', strtotime($str, $time));
}
// 2012-02-22 00:00:00
print_date('today');
print_date('midnight');
// 2012-02-01 22:22:22
print_date('first day of this month');
// 2012-02-29 22:22:22
print_date('last day of this month');
// 2012-02-27 00:00:00
print_date('Monday');
// 2012-02-20 00:00:00
print_date('last Monday');
// 2012-02-27 22:22:22
print_date('fifth day');
// 2012-02-17 22:22:22
print_date('fifth day ago');
// 2012-01-01 00:00:00
print_date('1/1');
// 2012-12-31 23:59:59
print_date('1/1 next year -1 sec');
月の初めとか、月末なんかは便利やも。あくまでUNIXタイムスタンプを得る目的としては。
date()
で表示するならもっと簡単にできますな。
<?php
date('Y-m-01 00:00:00');
date('Y-m-t 23:59:59');
しかし、「今月5日」とかはどうやってもstrtotime()
一発のみではできないですね…
今のところ使う機会ないですが。
コメント