導航:首頁 > 編程語言 > php計算工作日

php計算工作日

發布時間:2023-01-28 14:42:03

php 編程 計算本周五日期和下一個周五的日期

<?php
$friday=strtotime("Friday");//本周五開始時間
$lastFri=strtotime("lastFriday");//上周五開始時間或者$friday-86400*7
$nextFri=strtotime("nextFriday");//下周五開始時間或者$friday+86400*7注意一下:下周五這個有時會出問題,比如現在還不到周五,這樣得到的下周五的時間會和本周五一樣。
//如果需要某天截止時間可以在這一天的開始時間加上86400也就是1天
echo"本周五開始時間是:".date("Y-m-dH:i:s",$friday)."<br/>";
echo"上周五開始時間是:".date("Y-m-dH:i:s",$lastFri)."<br/>";
echo"下周五開始時間是:".date("Y-m-dH:i:s",$nextFri)."<br/>";

希望我的回答對您有所幫助~~

② php時間計算問題

利用strtotime函數!!!

1. 計算日期30天後可以用strtotime PHP提供了一個超級簡單的方式來完成本來要幾十行代碼的工作
先把某日期轉換成UNIX時間戳
$t = time(); // 當前時間戳
$t = strtotime("+30 days", $t); // 30天後的時間戳
echo date("Y-m-d", $t); // 格式化日期

2. 轉換2日期的時間戳...然後相減
$t1 = strtotime("2009-08-19");
$t2 = strtotime("2009-08-20");
$t = $t2 - $t1; // 相差天數的秒
echo (int)($t / 86400)

③ PHP計算一年多少個星期和每周的開始和結束日期

PHP計算一年多少個星期和每周的開始和結束日期?方法如下:
方法一:
<php
header("Content-type:text/html;charset=utf-8");
date_default_timezone_set("Asia/Shanghai");
$year = (int)$_GET['year'];
$week = (int)$_GET['week'];
$weeks = date("W", mktime(0, 0, 0, 12, 28, $year));
echo $year . '年一共有' . $weeks . '周<br />';
if ($week > $weeks || $week <= 0)
{
$week = 1;
}
if ($week < 10)
{
$week = '0' . $week;
}
$timestamp['start'] = strtotime($year . 'W' . $week);
$timestamp['end'] = strtotime('+1 week -1 day', $timestamp['start']);
echo $year . '年第' . $week . '周開始時間戳:' . $timestamp['start'] . '<br />';
echo $year . '年第' . $week . '周結束時間戳:' . $timestamp['end'] . '<br />';
echo $year . '年第' . $week . '周開始日期:' . date("Y-m-d", $timestamp['start']) . '<br />';
echo $year . '年第' . $week . '周結束日期:' . date("Y-m-d", $timestamp['end']);
?>
方法二: <?php
header("Content-type:text/html;charset=utf-8");
function getIsoWeeksInYear($year)
{
$date = new DateTime;
$date->setISODate($year, 53);
return ($date->format("W") === "53" ? 53 : 52);
}
function weekday($custom_date)
{
$week_start = date('d-m-Y', strtotime('this week monday', $custom_date));
$week_end = date('d-m-Y', strtotime('this week sunday', $custom_date));
$week_array[0] = $week_start;
$week_array[1] = $week_end;
return $week_array;
}
echo '<br> Weeks in 2013<br>' . getIsoWeeksInYear(2013);
$weekday = weekday(strtotime(date('d-m-Y', strtotime('5-8-2013'))));
echo '<br> 10-8-2013';
echo '<br>Start: ' . $weekday[0];
echo '<br>End: ' . $weekday[1];
?>
或者方法三:
function get_week($year) {
$year_start = $year . "-01-01";
$year_end = $year . "-12-31";
$startday = strtotime($year_start);
if (intval(date('N', $startday)) != '1') {
$startday = strtotime("next monday", strtotime($year_start)); //獲取年第一周的日期
}
$year_mondy = date("Y-m-d", $startday); //獲取年第一周的日期

$endday = strtotime($year_end);
if (intval(date('W', $endday)) == '7') {
$endday = strtotime("last sunday", strtotime($year_end));
}

$num = intval(date('W', $endday));
for ($i = 1; $i <= $num; $i++) {
$j = $i -1;
$start_date = date("Y-m-d", strtotime("$year_mondy $j week "));

$end_day = date("Y-m-d", strtotime("$start_date +6 day"));

$week_array[$i] = array (
str_replace("-",
".",
$start_date
), str_replace("-", ".", $end_day));
}
return $week_array;
}

函數get_week()通過傳入參數$year年份,獲取當年第一天和最後一天所在的周數,計算第一周的日期,通過循環獲取每一周的第一天和最後一天的日期。最後返回是一個數組。
想得到指定周數的開始日期和結束日期,比如2011年第18周的開始日期和結束日期,代碼如下:

復制代碼 代碼如下:

$weeks = get_week(2011);
echo '第18周開始日期:'.$weeks[18][0].'';
echo '第18周結束日期:'.$weeks[18][1];

最後輸出結果:

第18周開始日期:2011.05.02
第18周結束日期:2011.05.08

④ PHP判斷是否工作日

composer包:

https://packagist.org/packages/maidou/holiday

工作日定義:因法定節假日調休需要補班的 和 正常的周一到周五的工作日

節假日數據每年底更新下一年的,目前有2019,2020,2021的數據

使用方法:

use Maidou\Holiday\Holiday;

//某一天是否工作日

$is_work = Holiday::instance()->is_work_day("2021-05-10");

//日期段內工作日天數

$days = Holiday::instance()->work_days_between("2021-10-01","2021-10-10");

⑤ PHP 計算1月4號 到 2月3號 一共 多少天

PHP 計算1月4號 到 2月3號 一共 31天,
28+3=31

⑥ thinkphp怎麼獲取當前月的法定工作日

法定節假日,程序不會知道又不是都周一到周五,要看政策的啊。。只能去抓人家現成的。

⑦ php演算法編程 計算天數

<?php
$start='2017-2-5';
$end='2018-3-6';
functioncalDate($start,$end){
$start_time=strtotime($start); //獲得$start的秒時間戳
$end_time=strtotime($end); //獲得$end的秒時間戳
return($end_time-$start_time)/60/60/24; //秒時間戳相減得到兩個日期相差的秒數,通過秒數計算天數
}
echocalDate($start,$end);
?>

⑧ 用PHP判斷日期是節假日還是工作日

通過API(http://www.easybots.cn/holiday_api.net)獲取返回信息返回一個字串
{"20130101":"2"}
{"20130103":"1"}
{"20130201":「0「}
分三種情況 2代表 節日 1 代表假日 0 代表工作日;
截取最後的字串就可以判斷了 如果是0 就是工作日
substring(s.length-2,1);

⑨ php如何計算某一天是周幾

需要准備的材料分別是:電腦、php編輯器、瀏覽器。

1、首先,打開php編輯器,新建php文件,例如:index.php。

⑩ 求助:有沒有用PHP語言計算兩個日期間相差的工作日,只要排除周末就行求借鑒。

給你寫了一個函數,說明一下,周1-周4,相差3天,如果要計算結束那一天的話,那就在return 值的基礎上再+1;
函數為什麼這么寫,你自己揣摩一下,你可以使用我給你的例子,進行測試。應該沒有什麼問題。

$start = mktime(0,0,0,11,1,2012);
$end = mktime(0,0,0,11,30,2012);
echo "相差".workDays($start,$end)."個工作日";

function workDays( $start , $end ){
$end < $start && exit;
$double = ($end - $start)/(7*24*3600);
$double = floor($double);
$start = date('w',$start);
$end = date('w',$end);
$end = $start > $end ? $end + 5 : $end;
return $double * 5 + $end - $start;
}

閱讀全文

與php計算工作日相關的資料

熱點內容
加密貨幣容易被盜 瀏覽:82
蘋果平板如何開啟隱私單個app 瀏覽:704
空調壓縮機一開就停止 瀏覽:528
如何下載虎牙app 瀏覽:847
日語年號的演算法 瀏覽:955
dev裡面的編譯日誌咋調出來 瀏覽:298
php函數引用返回 瀏覽:816
文件夾和文件夾的創建 瀏覽:259
香港加密貨幣牌照 瀏覽:838
程序員鼓勵自己的代碼 瀏覽:393
計算機網路原理pdf 瀏覽:752
吃雞國際體驗服為什麼伺服器繁忙 瀏覽:94
php中sleep 瀏覽:490
vr怎麼看視頻演算法 瀏覽:86
手機app如何申報個人所得稅零申報 瀏覽:694
如何截獲手機app連接的ip 瀏覽:332
冰箱壓縮機是否需要電容 瀏覽:346
python列表每一行數據求和 瀏覽:276
自己有一台伺服器可以玩什麼 瀏覽:658
社會學波普諾pdf 瀏覽:585