根据给定的日期格式'YYYY-mm-dd',获取该日期所在周的起始日期
php代码
/** * 获取一年中所有星期的起始日期 * @param $year 格式 'YYYY' * 返回二维数组 下标 key1值对应一年中某一天所在周的实际年份 key2值对应一年中某一天所在的周数[一年中第几周] * 返回false 日期格式错误 */ function get_all_weeks($year){ $week_arr = array(); $year = intval(trim($year)); $preg = "/^\d{4,}$/"; if(!preg_match($preg, $year)){ return false; } $begin_day = $year . '-01-01'; $end_day = $year . '-12-31'; //一年第一个星期一 if(date('w',strtotime($begin_day))!=1){ $begin_day = date('Y-m-d',strtotime("next monday", strtotime($begin_day))); } //第一个星期一所在周数 $begin_week_num = intval(date('W',strtotime($begin_day))); //一年最后一个星期天 if(date('w',strtotime($end_day))!=0){ $end_day = date('Y-m-d',strtotime("last sunday",strtotime($end_day))); //存在跨年的星期,跨年所在周星期一 $end_day_next = date('Y-m-d',strtotime($end_day)+24*60*60); //跨年星期所属年份与所在周数 $stride_year = date('o',strtotime($end_day_next)); $stride_weeknum = intval(date('W',strtotime($end_day_next))); } //最后一个星期天所在周数 $end_week_num = intval(date('W',strtotime($end_day))); //一年第一个周一为一年的第一周或者第二周 if($begin_week_num!=1){ $i=2; }else{ $i=1; } $j = 0; for($i;$i<=$end_week_num;$i++){ $start_date = date("Y-m-d", strtotime("$begin_day $j week")); $end_day = date("Y-m-d", strtotime($start_date . '+6 day')); $week_arr[$year][$i] = array( $start_date, $end_day ); $j++; } if($end_day_next){ $week_arr[$stride_year][$stride_weeknum] = array( $end_day_next, date("Y-m-d", strtotime($end_day_next . '+6 day')) ); } return $week_arr; } //demo_调用 /* $year = '2013'; if(get_all_weeks($year)){ var_dump(get_all_weeks($year)); }else{ echo '日期格式出错'; } */ /** * 获取某一天所在周的起始日期 * 依赖 function get_all_weeks * @param $day 格式:'YYYY-mm-dd' * 返回false 日期格式错误 * 正确,返回json "{"begin_day":"YYYY-mm-dd","end_day":"YYYY-mm-dd"}" */ function get_day_week($day){ $date_arr = explode('-', trim($day)); if(!checkdate(intval($date_arr[1]), intval($date_arr[2]), intval($date_arr[0]))){ return false; } $year = date('Y',strtotime($day)); $weeks = get_all_weeks($year); //某一天所属的年份与周数 $real_year = date('o',strtotime($day)); $week_num = intval(date('W',strtotime($day))); if(!empty($weeks[$real_year][$week_num][0])) $begin_day = $weeks[$real_year][$week_num][0]; if(!empty($weeks[$real_year][$week_num][1])) $end_day = $weeks[$real_year][$week_num][1]; //跨年周数值存储于上一年中 if(empty($begin_day)||empty($end_day)){ $year = date('Y',strtotime($day))-1; $weeks = get_all_weeks($year); $real_year = date('o',strtotime($day)); $week_num = intval(date('W',strtotime($day))); if(!empty($weeks[$real_year][$week_num][0])) $begin_day = $weeks[$real_year][$week_num][0]; if(!empty($weeks[$real_year][$week_num][1])) $end_day = $weeks[$real_year][$week_num][1]; } $the_day = array( 'begin_day' => $begin_day, 'end_day' => $end_day ); $the_day = json_encode($the_day); return $the_day; } //demo_调用 /* $day = '2014-01-01'; if(get_day_week($day)){ var_dump(get_day_week($day)); }else{ echo '日期格式出错'; } */

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

1.先開啟手機網路瀏覽器,搜尋微博網頁版,進入後點選左上角頭像按鈕。 2、然後點選右上角設定。 3.點選設定裡面的版本切換選項。 4.接著在版本切換裡選擇彩版選項。 5.點選搜索,進入搜尋頁面。 6.輸入關鍵字後,點選找人。 7.出來的搜尋完成介面點選篩選。 8.最後在發佈時間欄輸入特定日期後,點選篩選即可。

1.先說說我剛開始用的方法,或許大家也在用。先是打開【視野】——】備註模版【。 2.打開後確實能看到日期的地方。 3.先選擇它,並把它刪除。 4.刪除後點選【關閉母版檢視】。 5.再開啟列印預覽,發現日期還是在。 6.其實這個日期不是在這個地方刪除的。應該是在【講義母版】那裡。看下圖。 7.找到日期後把它刪除。 8.現在在打開預覽看一下,就沒有這個日期了。註:其實這個方法也很容易記,因為印刷的是講義,所以應該找【講義母版】。

產生隨機數據在數據科學領域非常重要。從建構神經網路預測、股市數據等來看,通常都會將日期當作參數之一。我們可能需要在兩個日期之間產生隨機數以進行統計分析。本文將展示如何產生兩個給定日期之間的k個隨機日期使用隨機和日期時間模組日期時間是Python內建的處理時間的庫。另一方面,隨機模組有助於產生隨機數。因此,我們可以結合隨機和日期時間模組來產生兩個日期之間的隨機日期。語法random.randint(start,end,k)這裡的random指的是Python隨機函式庫。 randint方法採用三個重要的

在Python進行資料分析時,依照日期進行分組匯總也是被需要的,例如會找到銷量的周期性規律。那麼在用Python進行資料統計之前,就需要額外增加一步:從指定的日期當中取得星期幾。例如2022年2月22日,還剛好是正月廿二星期二,於是乎這天登記結婚的人特別多。本文以2022-02-22為例,示範Python取得指定日期是「星期幾」的6種方法! weekday()datetime模組是一個Python內建函式庫,無需再進行pip安裝,它除了可以顯示日期和時間之外,還可以進行日期和時間的運算以及格式化。

Ubuntu17.10頂欄預設只有目前的時間,沒有日期,想要顯示日期,該怎麼辦呢?下面我們就來看看詳細的教學。 1.在啟動器開啟終端,或按[Ctrl+Alt+T]2、終端輸入:sudoaptinstallgnome-tweak-tool3、安裝完成之後,開啟tweak工具4、點選TopBar5、Date就是日期,seconds就是秒數6、設定好之後,頂欄的時間上就顯示了日期,以及秒

excel軟體有非常強大的數據處理功能,我們經常用excel軟體來處理各種數據,有時我們在excel單元格中輸入日期的時候,excel打日期變成井號了,那怎麼能正常顯示數據呢?下面讓我們一起來看看解決的方法吧。 1.首先我們把滑鼠放在AB列之間的列寬線,雙擊以後調整列寬,如下圖所示。 2.列拉寬後,我們發現單元格內顯示的是數字,而不是日期,這肯定是不正確的,那我們就應該檢查一下單元格的格式了,如下圖所示。 3.點選“開始”標籤內的“數值”選項,點選下拉選單內的“其他數字格式”,如下圖所示。

如何使用Python中的時間和日期模組導言:在程式設計中,處理時間和日期是非常常見的任務。 Python提供了強大的時間和日期模組,使得處理時間和日期的操作變得更加簡單和方便。本文將介紹Python中的時間和日期模組,並提供具體的程式碼範例,幫助讀者更好地理解和應用它們。一、引入時間和日期模組Python內建的時間和日期模組是datetime模組,我們需要先引入該模

題目:Go語言中如何判斷日期是否為前一天?在日常開發中,常常會遇到需要判斷日期是否為前一天的情況。在Go語言中,我們可以透過時間運算來實現這個功能。以下將結合具體的程式碼範例來示範如何在Go語言中判斷日期是否為前一天。首先,我們需要導入Go語言中的時間包,程式碼如下:import("time")接著,我們定義一個函式IsYest
