覚えておくと便利そうな日付関連操作のメモ。
※PHPは5.3から日付関連の関数が強化されているので、ここに記載されているよりやりやすい方法が別にあるかもしれない。
スポンサードリンク
月立ち(PHP)
date(“Y-m-1”);
月末(PHP)
date(“Y-m-t”);
翌月の月立ち(PHP)
date(“Y-m-d”, strtotime(date(“Y-m-t”)) + (60 * 60 * 24));
date(‘y-m-1′,strtotime(‘+1 month’));
集計(MySQL)
※ time が日付フィールド
年別
SELECT id, DATE_FORMAT(time,’%Y年’) as time1 FROM table1 GROUP BY time1
月別
SELECT id, DATE_FORMAT(time,’%Y年%m月’) as time2 FROM table1 GROUP BY time2
日別
SELECT id, DATE_FORMAT(time,’%Y年%m月%d日’) as time3 FROM table1 GROUP BY time3
CakePHP(マニュアルより引用)
daysAsSql( $begin, $end, $fieldName, $userOffset = NULL )
daysAsSql は「($field_name >= ‘2008-01-21 00:00:00’) AND ($field_name <= ‘2008-01-25 23:59:59’)」という文字列を返します。これはある日時から別の日時の間のレコードを探すときに便利です。
dayAsSql( $date_string, $field_name )
dayAsSql は daysAsSql と同じフォーマットの文字列を作成しますが、 date オブジェクトを一つしか必要としません。
参考文献
- [PHP]当月月末の年月日を取得(翌月1日も)する方法メモ | HappyQuality :
[PHP]当月月末の年月日を取得(翌月1日も)する方法メモ | HappyQuality概要 当月のデータを取得するクエリをデータベースに投げるとき、月末や翌月1日を指定したいことってありますよね? というわけで、PHPで月末年月日&翌月1日を取得する方法のメモです。 当月月末年月日を取得 date関数を使... - MysqlのDATE_FORMAT関数をもっと早く知っていれば | 株式会社M&Aバンク :
http://ma-bank.com/item/604 - フォーマット :: Time :: 主要なヘルパー :: マニュアル :: 1.3コレクション :: The Cookbook :
301 Moved Permanently
コメント