PHP

strtotime関数でいろいろ試してみた

基準が現在じゃないときは結構使えそう。
メモメモ。

<?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()一発のみではできないですね…
今のところ使う機会ないですが。

スポンサーリンク
記事を書いた人

システムえんじにゃー🐈
趣味はエレキギター、自転車など。作曲したい。
World of Warshipsやってます。
記事に関する質問はお気軽にどうぞ。

surface0 (さーふぇす)をフォローする

コメント

タイトルとURLをコピーしました