当前位置:首页 » 编程语言 » php获取周几

php获取周几

发布时间: 2023-06-10 21:23:06

‘壹’ php获取当前日期及本周一是几月几号的方法

<?php header("content-type:text/html;charset=utf-8"); date_default_timezone_set('PRC'); function getWeek($unixTime=''){ $unixTime=is_numeric($unixTime)?$unixTime:time(); $weekarray=array('日','一','二','三','四','五','六','七'); return "星期".$weekarray[date('w',$unixTime)]; } $var=getWeek(); switch($var){ case '星期天': $var=time(); $var2=$var-(84600*6); echo "今天是".date("Y-m-d",$var)."号<br/>这个星期一是".date("Y-m-d",$var2)."号"; break; case '星期一': $var=time(); $var2=$var; echo "今天是".date("Y-m-d",$var)."号<br/>这个星期一是".date("Y-m-d",$var2)."号"; break; case '星期二': $var=time(); $var2=$var-84600; echo "今天是".date("Y-m-d",$var)."号<br/>这个星期一是".date("Y-m-d",$var2)."号"; break; case '星期三': $var=time(); $var2=$var-(84600*2); echo "今天是".date("Y-m-d",$var)."号<br/>这个星期一是".date("Y-m-d",$var2)."号"; break; case '星期四': $var=time(); $var2=$var-(84600*3); echo "今天是".date("Y-m-d",$var)."号<br/>这个星期一是".date("Y-m-d",$var2)."号"; break; case '星期五': $var=time(); $var2=$var-(84600*4); echo "今天是".date("Y-m-d",$var)."号<br/>这个星期一是".date("Y-m-d",$var2)."号"; break; case '星期六': $var=time(); $var2=$var-(84600*5); echo "今天是".date("Y-m-d",$var)."号<br/>这个星期一是".date("Y-m-d",$var2)."号"; break; }?>

‘贰’ PHP 计算某日是这一年的第几周

在判断某一天是哪一年的第几周的时候,根据采用的国际标准(忘了叫什么名字了),年首或者年末的那几天有可能不属于今年的第一周或者最后一周。

代码如下:

<?php

echo date("oW",strtotime("20141229"))." ";

echo date("oW",strtotime('20160101'))." ";

?>

(2)php获取周几扩展阅读

php计算时间段的天数:

$firstday = date("Y-m-d H:i:s",time());//当前日期

$timestamp=strtotime($firstday);//当前日期时间戳

$firstday=date('Y-m-01',strtotime(date('Y',$timestamp).'-'.(date('m',$timestamp)-1).'-01'));//上个月开始的日期

$lastday=date('Y-m-d',strtotime("$firstday +1 month -1 day"));//上个月结束的日期

$stimestamp = strtotime($firstday);

$etimestamp = strtotime($lastday);// 计算日期段内有多少天

$days = ($etimestamp-$stimestamp)/86400+1;// 保存每天日期

$date = array();

for($i=0; $i<$days; $i++){

$date[] = date('Y-m-d', $stimestamp+(86400*$i));

}

‘叁’ php日历模块的运算逻辑求解!如何求日期对应的星期几!

现在以2010年6月14日为例说明。6月份共有30天,在这个日历表中共5行,首先需要确定当前所在的日期(当然也可以指定一个日期),比如14日,通过表格可以知道它在第3行对应星期一那列(第3周)。通常每个月第1天不是在表格开始的位置,位置并不固定,同样不固定的还有每个月的周数,有时候是4周,有时候是5周。这样,想要完成这个日历表格就需要确定一些基础的日期变量,下面具体来看需要设定的基础变量。

PHP提供了date()函数,该函数提供了丰富的日期处理功能。现在需要获得的数据有两个,第一个是当月的总天数;第二个是该月的第一天所在星期中的第几天,数字表示0(表示星期天)到6(表示星期六)。通过date()函数可以很容易获得上面的数据。

<?php

//date()函数的基本用法

$year = date('Y'); //获得年份,例如2006

$month = date('n'); //获得月份,例如04

$day = date('j'); //获得日期,例如3

?>

通过mktime()函数和date()函数获得当月的总天数。

//获得当月的总天数

$daysInMonth = date("t",mktime(0,0,0,$month,1,$year));

同样是组合使用mktime()函数和date()函数,获得该月的第一天所在星期中的第几天,数字表示0(表示星期天)到6(表示星期六)。

//获得每个月的第一天,例如4

$firstDay = date("w", mktime(0,0,0,$month,1,$year));

现在重新来观察下这个日历表格,我们发现,表格中的值是从1到x(当月的总天数)。我们可以形象地通过一个坐标来表示每一个位置(x,y),表格的起始位置是(0,0),结束位置是(5,4),当月第一天的起始位置是(0,3)。现在来创建一个二维数组来存储对应的日期。

(1)需要获得表格的数目。

//计算数组中的日历表格数

$tempDays = $firstDay + $daysInMonth;

(2)需要算出该月一共有几周(即表格的行数)。

//获得表格行数

$weeksInMonth = ceil($tempDays/7);

(3)在获得行数的变量之后,创建一个二维数组用来存放日期信息,代码如下:

<?php

for($j=0;$j<$weeksInMonth;$j++)

{

for($i=0;$i<7

;$i++)

{

$counter ++;

$week [$j] [$i] = $counter;

}

}

?>

(4)细心的读者可能发现,上面的代码其实是一个雏型,因为它处理出来的数据并没有过滤那些空白的表格单元。下面来继续改造下这段代码,加入过滤和构造的部分。改造后的代码如下:

<?php

//创建日期二维数组

for($j = 0; $j < $weeksInMonth; $j ++) {

for($i = 0; $i < 7; $i ++) {

$counter ++;

$week [$j] [$i] = $counter;

//日期偏移量

$week [$j] [$i] -= $firstDay;

if (($week [$j] [$i] < 1) || ($week [$j] [$i] > $daysInMonth)) {

$week [$j] [$i] = "";

}

}

}

?>

(5)在获得正确的二维数组之后,就可以通过foreach()函数将存储的日期信息遍历出来,同时插入HTML标签创建日期

不知是否正确,转自我的一个朋友

‘肆’ PHP怎样获得最近一个周一和上周一的日期

本周周一的日期:

$ts=time();
$this_monday=this_monday($ts);
echodate('Y-m-dH:i:s',$this_monday);
//这个星期的星期一
//@$timestamp,某个星期的某一个时间戳,默认为当前时间
//@is_return_timestamp,是否返回时间戳,否则返回时间格式
functionthis_monday($timestamp=0,$is_return_timestamp=true){
static$cache;
$id=$timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp)$timestamp=time();
$monday_date=date('Y-m-d',$timestamp-86400*date('w',$timestamp)+(date('w',$timestamp)>0?86400:-/*6*86400*/518400));
if($is_return_timestamp){
$cache[$id]=strtotime($monday_date);
}else{
$cache[$id]=$monday_date;
}
}
return$cache[$id];

}

上周一的函数则为

$ts=time();
$last_monday=last_monday($ts);
echodate('Y-m-dH:i:s',$last_monday);
//上周一
//@$timestamp,某个星期的某一个时间戳,默认为当前时间
//@is_return_timestamp,是否返回时间戳,否则返回时间格式
functionlast_monday($timestamp=0,$is_return_timestamp=true){
static$cache;
$id=$timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp)$timestamp=time();
$thismonday=this_monday($timestamp)-/*7*86400*/604800;
if($is_return_timestamp){
$cache[$id]=$thismonday;
}else{
$cache[$id]=date('Y-m-d',$thismonday);
}
}
return$cache[$id];
}

‘伍’ 怎么用php来获取时间 周次 节次来做签到功能

签到功能主要是需要获取上次签到时间,然后进行比对,如果比较之后在零点之后,且大于24小时,就认为连续签到失败。

关键点:每次需要记录签到时间,这样以后无论是根据记录,还是相应算法都可以统计相关的签到记录。

签到功能核心就是时间的比较,只要比对好时间,然后封装签到方法,就可以轻松记录签到情况。

‘陆’ php如何计算某一天是周几

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

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

‘柒’ PHP获取当前日期和星期

<?php
date_default_timezone_set("Asia/ShangHai");
$date=date('Y年m月d日');//获取时间
echo "$date ";
$weekarray=array("日","一","二","三","四","五","六");
echo "星期".$weekarray[date("w")];//获取星期
?>

‘捌’ php输出星期几

date('中间加下面的内容');
d 月份中的第几天,有前导零的 2 位数字 01 到 31
D 星期中的第几天,文本表示,3 个字母 Mon 到 Sun
j 月份中的第几天,没有前导零 1 到 31
l(“L”的小写字母) 星期几,完整的文本格式 Sunday 到 Saturday
N ISO-8601 格式数字表示的星期中的第几天(PHP 5.1.0 新加) 1(表示星期一)到 7(表示星期天)
S 每月天数后面的英文后缀,2 个字符 st,nd,rd 或者 th。可以和 j 一起用
w 星期中的第几天,数字表示 0(表示星期天)到 6(表示星期六)
z 年份中的第几天 0 到 365
星期 --- ---
W ISO-8601 格式年份中的第几周,每周从星期一开始(PHP 4.1.0 新加的) 例如:42(当年的第 42 周)
月 --- ---
F 月份,完整的文本格式,例如 January 或者 March January 到 December
m 数字表示的月份,有前导零 01 到 12
M 三个字母缩写表示的月份 Jan 到 Dec
n 数字表示的月份,没有前导零 1 到 12
t 给定月份所应有的天数 28 到 31
年 --- ---
L 是否为闰年 如果是闰年为 1,否则为 0
o ISO-8601 格式年份数字。这和 Y 的值相同,只除了如果 ISO 的星期数(W)属于前一年或下一年,则用那一年。(PHP 5.1.0 新加) Examples: 1999 or 2003
Y 4 位数字完整表示的年份 例如:1999 或 2003
y 2 位数字表示的年份 例如:99 或 03
时间 --- ---
a 小写的上午和下午值 am 或 pm
A 大写的上午和下午值 AM 或 PM
B Swatch Internet 标准时 000 到 999
g 小时,12 小时格式,没有前导零 1 到 12
G 小时,24 小时格式,没有前导零 0 到 23
h 小时,12 小时格式,有前导零 01 到 12
H 小时,24 小时格式,有前导零 00 到 23
i 有前导零的分钟数 00 到 59>
s 秒数,有前导零 00 到 59>
时区 --- ---
e 时区标识(PHP 5.1.0 新加) 例如:UTC,GMT,Atlantic/Azores
I 是否为夏令时 如果是夏令时为 1,否则为 0
O 与格林威治时间相差的小时数 例如:+0200
P 与格林威治时间(GMT)的差别,小时和分钟之间有冒号分隔(PHP 5.1.3 新加) 例如:+02:00
T 本机所在的时区 例如:EST,MDT(【译者注】在 Windows 下为完整文本格式,例如“Eastern Standard Time”,中文版会显示“中国标准时间”)。
Z 时差偏移量的秒数。UTC 西边的时区偏移量总是负的,UTC 东边的时区偏移量总是正的。 -43200 到 43200
完整的日期/时间 --- ---
c ISO 8601 格式的日期(PHP 5 新加) 2004-02-12T15:19:21+00:00
r RFC 822 格式的日期 例如:Thu, 21 Dec 2000 16:01:07 +0200
U 从 Unix 纪元(January 1 1970 00:00:00 GMT)开始至今的秒数

‘玖’ php获取本周开始日期和结束日期的方法

本文实例讲述了php获取本周开始日期和结束日期的方法。分享给大家供大家参考。具体如下:
复制代码
代码如下://当前日期
$sdefaultDate
=
date("Y-m-d");
//$first
=1
表示每周星期一为开始日期
0表示每周日为开始日期
$first=1;
//获取当前周的第几天
周日是
0
周一到周六是
1
-
6
$w=date('w',strtotime($sdefaultDate));
//获取本周开始日期,如果$w是0,则表示周日,减去
6

$week_start=date('Y-m-d',strtotime("$sdefaultDate
-".($w
?
$w
-
$first
:
6).'
days'));
//本周结束日期
$week_end=date('Y-m-d',strtotime("$week_start
+6
days"));
希望本文所述对大家的php程序设计有所帮助。

热点内容
优酷视频缓存设置 发布:2025-02-13 19:04:03 浏览:156
如何识别网络配置 发布:2025-02-13 19:04:02 浏览:300
android签名漏洞 发布:2025-02-13 18:59:47 浏览:255
解压高达 发布:2025-02-13 18:58:56 浏览:518
苹果怎么对备忘录加密码 发布:2025-02-13 18:44:19 浏览:72
php房产网 发布:2025-02-13 18:18:06 浏览:86
源码资源吧 发布:2025-02-13 18:14:39 浏览:80
java培训价钱 发布:2025-02-13 17:59:33 浏览:975
c语言中变量类型 发布:2025-02-13 17:52:20 浏览:259
ftp导出报错 发布:2025-02-13 17:41:20 浏览:998