/*
* 獲取日期對(duì)應(yīng)的星期
* 參數(shù)$date為輸入的日期數(shù)據(jù),格式如:2018-6-22
*/
function get_week($date)
{
//強(qiáng)制轉(zhuǎn)換日期格式
$date_str = date('Y-m-d', strtotime($date));
//封裝成數(shù)組
$arr = explode("-", $date_str);
//參數(shù)賦值
//年
$year = $arr[0];
//月,輸出2位整型,不夠2位右對(duì)齊
$month = sprintf('%02d', $arr[1]);
//日,輸出2位整型,不夠2位右對(duì)齊
$day = sprintf('%02d', $arr[2]);
//時(shí)分秒默認(rèn)賦值為0;
$hour = $minute = $second = 0;
//轉(zhuǎn)換成時(shí)間戳
$strap = mktime($hour, $minute, $second, $month, $day, $year);
//獲取數(shù)字型星期幾
$number_wk = date("w", $strap);
//自定義星期數(shù)組
$weekArr = array("0", "1", "2", "3", "4", "5", "6");
//獲取數(shù)字對(duì)應(yīng)的星期
return $weekArr[$number_wk];
}
/**
* 獲取一周日期
* @param $time 時(shí)間戳
* @param $format 轉(zhuǎn)換格式
*/
function get_week($time, $format = "Y-m-d") {
$week = date('w',$time);
$weekname=array('星期一','星期二','星期三','星期四','星期五','星期六','星期日');
//星期日排到末位
if(empty($week)){
$week=7;
}
for ($i=0;$i=6;$i++){
$data[$i]['date'] = date($format,strtotime( '+'. $i+1-$week .' days',$time));
$data[$i]['week'] = $weekname[$i];
}
return $data;
}
/*
* 獲取某星期的開始時(shí)間和結(jié)束時(shí)間
* time 時(shí)間
* first 表示每周星期一為開始日期 0表示每周日為開始日期
*/
function getWeekMyActionAndEnd($time = '', $first = 1)
{
//當(dāng)前日期
if (!$time) $time = time();
$sdefaultDate = date("Y-m-d", $time);
//$first =1 表示每周星期一為開始日期 0表示每周日為開始日期
//獲取當(dāng)前周的第幾天 周日是 0 周一到周六是 1 - 6
$w = date('w', strtotime($sdefaultDate));
//獲取本周開始日期,如果$w是0,則表示周日,減去 6 天
$week_start = date('Y-m-d', strtotime("$sdefaultDate -" . ($w ? $w - $first : 6) . ' days'));
//本周結(jié)束日期
$week_end = date('Y-m-d', strtotime("$week_start +6 days"));
return array("week_start" => $week_start, "week_end" => $week_end);
}
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php日期與時(shí)間用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》