-
-
//指定された日付の週の開始時刻と終了時刻を取得します - //プログラマーの自宅を整理します
- //at 2013-6-18
- function getWeekRange ($ date){
- $ret=array();
- $timestamp=strtotime($date);
- $w=strftime('%u',$timestamp);
- $ret['sdate']=date(' Y-m-d 00 :00:00',$timestamp-($w-1)*86400);
- $ret['edate']=date('Y-m-d 23:59:59',$timestamp+(7-$w)* 86400) ;
- return $ret;
- }
// 指定した日付の月の開始日と終了日を取得します
- function getMonthRange($date){
- $ret=array( );
- $timestamp =strtotime($date);
- $mdays=date('t',$timestamp);
- $ret['sdate']=date('Y-m-1 00:00:00',$timestamp );
- $ret ['edate']=date('Y-m-'.$mdays.' 23:59:59',$timestamp);
- return $ret;
- }
// 上記2つの function の応用
- function getFilter($n){
- $ret=array();
- switch($n){
- case 1:// Yesterday
- $ret['sdate']=date(' Y-m-d 00:00: 00',strtotime('-1 day'));
- $ret['edate']=date('Y-m-d 23:59:59',strtotime('-1 day'));
- break ;
- ケース 2: //今週
- $ret=getWeekRange(date('Y-m-d'));
- break;
- ケース 3://前週
- $strDate=date('Y-m-d',strtotime( '-1 週間 '));
- $ret=getWeekRange($strDate);
- break;
- ケース 4: //先週
- $strDate=date('Y-m-d',strtotime('-2 週間')) ;
- $ ret=getWeekRange($strDate);
- break;
- case 5: //今月
- $ret=getMonthRange(date('Y-m-d'));
- break;
- case 6://先月
- $strDate= date('Y-m-d',strtotime('-1 month'));
- $ret=getMonthRange($strDate);
- break;
- }
- return $ret;
- }
- ?> p>
-
コードをコピー
|