PHP计算一年多少个星期和每周的开始和结束日期

PHP计算一年多少个星期和每周的开始和结束日期,第1张

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周开始日期:20110502

第18周结束日期:20110508

1种直接:

<php

$a='2016-05-23';//定一个星期一

$aa=strtotime($a);

$b=date('Y-m-d');//服务器时间

$bb=strtotime($b);

$tian=($bb-$aa)/86400;//时间戳相减是秒,获得天数

$dijigexingqi=intval($tian/7);//从那个星期一开始过了几个星期。取整从0开始

$tag=$dijigexingqi%5;//取余

switch($tag)

{

case 0: $url='123com'; break;

case 1: $url='234com'; break;

case 2: $url='345com'; break;

case 3: $url='567com'; break;

case 4: $url='678com'; break;

default: echo "有问题";break;

}

echo $dijigexingqi"--"$tag$url;

>

2

excel 下拉搞下数据,放到数据库里。   或者你会什么xml文件de弄下

<php

$db = mysql_connect('127001:3060','root','root');

if(!$db)

{

mysql_close($db);

exit(false);

}

mysql_selectdb('tongren');

$data=date('Y-m-d h:i:s',time());

$result = mysql_query('select url  from test3 where start<\''$data'\' and end > \''$data'\'');

$rows = mysql_fetch_array($result,MYSQL_ASSOC);

echo $rows[url];

>

一、使用函式 date() 实现

在编辑器中输入<php echo $showtime=date("Y-m-d H:i:s");>,点击回车就可以得知当前的时间。其中Y是代表4位的年份,H是24小时制,i 是分钟,如: "00" 至 "59" 。s -是秒,如: "00" 至 "59" 。

d 是几日,二位数字,若不足二位则前面补零。 如: "01" 至 "31" 。m代表月份,二位数字,若不足二位则在前面补零,如: "01" 至 "12" 。

二、使用time函数

在编辑器中输入echo date("y-m-d",$time)点击回车就可以得知当前的时间,其中Y是代表4位的年份,m代表月份,二位数字,若不足二位则在前面补零,如: "01" 至 "12" 。d 是几日,二位数字,若不足二位则前面补零。 如: "01" 至 "31" 。

三、使用strftime函数

在编辑器中输入echo strftime ("%hh%m %a %d %b" ,time());点击回车就可以得知当前的时间。

扩展资料:

Date/Time 函数

一、time — 返回当前的 Unix 时间戳

二、timezone_abbreviations_list — 别名 DateTimeZone::listAbbreviations

三、timezone_identifiers_list — 别名 DateTimeZone::listIdentifiers

四、timezone_location_get — 别名 DateTimeZone::getLocation

五、date — 格式化一个本地时间/日期

六、getdate — 取得日期/时间信息

七、gettimeofday — 取得当前时间

八、gmdate — 格式化一个 GMT/UTC 日期/时间

九、gmmktime — 取得 GMT 日期的 UNIX 时间戳

参考资料:

百度百科——PHP

你的数据库里需要有一个记录时间的字段,例如这个字段是posttime,每次插入数据的时候,都记录下当前的时间戳,也就是time();

你需要得到上周开始,和上周结束的时间戳

$beginLastweek=mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));

$endLastweek=mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));

3查询的时候,WHERE 条件里加上  posttime>=$beginLastweek AND posttime<=$endLastweek 

希望对你有帮助

php获取昨天、今天、明天、上周、本月、一年后、十年后的开始时间戳和结束时间戳:

//php获取昨天日期    

date("Y-m-d",strtotime("-1 day"))    

//php获取明天日期    

date("Y-m-d",strtotime("+1 day"))    

//php获取一周后日期    

date("Y-m-d",strtotime("+1 week"))    

//php获取一周零两天四小时两秒后时间    

date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds"))    

//php获取下个星期四日期    

date("Y-m-d",strtotime("next Thursday"))    

//php获取上个周一日期    

date("Y-m-d",strtotime("last Monday"))    

//php获取一个月前日期    

date("Y-m-d",strtotime("last month"))    

//php获取一个月后日期    

date("Y-m-d",strtotime("+1 month"))    

//php获取十年后日期    

date("Y-m-d",strtotime("+10 year"))    

//php获取今天起止时间戳    

mktime(0,0,0,date('m'),date('d'),date('Y'));    

mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;    

//php获取昨天起止时间戳    

mktime(0,0,0,date('m'),date('d')-1,date('Y'));    

mktime(0,0,0,date('m'),date('d'),date('Y'))-1;    

//php获取上周起止时间戳    

mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));    

mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));    

//php获取本月起止时间戳    

mktime(0,0,0,date('m'),1,date('Y'));    

mktime(23,59,59,date('m'),date('t'),date('Y'));

需要准备的材料分别是:电脑、php编辑器、浏览器。

1、首先,打开php编辑器,新建php文件,例如:indexphp。

2、在indexphp中,输入代码:$day = '2019-06-01';$week = date('l', $day);echo $week;。

3、浏览器运行indexphp页面,此时会打印出指定日期是周几。

以上就是关于PHP计算一年多少个星期和每周的开始和结束日期全部的内容,包括:PHP计算一年多少个星期和每周的开始和结束日期、请教一个php功能如何实现 需求:有5个网址地址,希望根据服务器时间按顺序每周显示一个网址给用户、php中如何获得当前时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9564706.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存