① php有没相关函数可以获取给定日期的上个月的第一天及最后一天
没有,可以取当前月的第一天00:00的时间戳,然后减24小时,再date即是上个月的最后一天。
如:
$prev_month_last_day = date("Y/m/d", strtotime(date("Y-m-1")) - 86400);
list($year, $month, $day) = explode("/", $prev_month_last_day);
$prev_month_first_day = $year . '/' . $month . '/1';
printf("first day of prev month is : %s\nlast day of prev month is : %s\n", $prev_month_first_day, $prev_month_last_day);
② php获取今天某个时间的时间戳的方法
大家也许对PHP时间戳已经有所了解,那么我们如何应用它来获取具体的日期呢?我们今天来为大家介绍一下PHP时间戳获取当前时期的具体方式。
实现功能:获取某个日期的时间戳,或获取某个时间的PHP时间戳。
strtotime能将任何英文文本的日期时间描述解析为Unix时间戳,我们结合mktime()或date()格式化日期时间获取指定的时间戳,实现所需要的日期时间。
strtotime 将任何英文文本的日期时间描述解析为Unix时间戳[将系统时间转化成unix时间戳]
一,获取指定日期的unix时间戳 strtotime(”2009-1-22″) 示例如下:
echo strtotime(”2009-1-22“) 结果:1232553600
说明:返回2009年1月22日0点0分0秒时间戳
二,获取英文文本日期时间 示例如下:
便于比较,使用date将当时间戳与指定时间戳转换成系统时间
(1)打印明天此时的时间戳strtotime(”+1 day“)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”+1 day”)) 结果:2009-01-23 09:40:25
(2)打印昨天此时的PHP时间戳strtotime(”-1 day“)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”-1 day”)) 结果:2009-01-21 09:40:25
(3)打印下个星期此时的时间戳strtotime(”+1 week“)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”+1 week”)) 结果:2009-01-29 09:40:25
(4)打印上个星期此时的时间戳strtotime(”-1 week“)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”-1 week”)) 结果:2009-01-15 09:40:25
(5)打印指定下星期几的PHP时间戳strtotime(”next Thursday“)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”next Thursday”)) 结果:2009-01-29 00:00:00
(6)打印指定上星期几的时间戳strtotime(”last Thursday“)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”last Thursday”)) 结果:2009-01-15 00:00:00
以上示例可知,strtotime能将任何英文文本的日期时间描述解析为Unix时间戳,我们结合mktime()或date()格式化日期时间获取指定的PHP时间戳,实现所需要的日期时间。
③ php 指定时间退后或提前N个月的函数怎么写
/**
*返回某个时间几月前或及月后的时间戳
*@$datetime指定时间戳
*@$num增减月份(1,-2)
*@returndatetime
*/
($datetime,$num){
$year_month=date("Y-m",$datetime);
$time_day=date("d",$datetime);
$H=date("H",$datetime);
$i=孙蚂date("i",$datetime);
$s=date("s",$datetime);
if($num>0){
则巧埋宽羡$act="+".abs($num)."month";
}else{
$act="-".abs($num)."month";
}
$time=strtotime($act,strtotime($year_month));
$time_str=date("Y-m-d",$time);
if(date("t",$time)>$time_day){
$return_time=mktime($H,$i,$s,date("m",$time),date("d",$time),date("Y",$time));
}else{
$return_time=mktime($H,$i,$s,date("m",$time),date("t",$time),date("Y",$time));
}
return$return_time;
}
④ php 如何获取一个月前的时间戳
strtotime 非常强大的一个获取时间戳的函数
例:获取前一个月的时间
strtotime("-1 month");
获取上一个月的今天的上一天
date("Y-m-d",strtotime("-1 month - day"));
获取上近五年
strtotime("-5 year");
网络一下,这个网上有很多
⑤ PHP获取当前时间、年份、月份、日期和天数
获取当前时间、年份、月份、日期和天数是PHP编程中常用的实践。PHP提供了多种函数来处理时间日期的获取与格式化。下面将详细介绍PHP中获取和格式化时间日期的常用方法。
获取当前时间主要依赖于PHP的`Date()`函数,该函数能够将时间戳转换为易读的日期与时间格式。函数语法如下:
`Date(format, timestamp)`
其中,`format`参数用于指定输出的日期格式,而`timestamp`参数可选,用来指定时间戳,默认为`time()`函数返回的当前时间戳。
格式化参数`format`涵盖了一些常用日期字符,如:
`Y`表示完整四位数的年份(例如2019);
`y`表示两位数的年份(例如19);
`F`表示完整文本格式的月份(例如January);
`M`表示三个字母的月份(例如Jun);
`m`表示带前导零的月份(例如04);
`n`表示无前导零的月份(例如4);
`d`表示带前导零的日期(例如01-31);
`j`表示无前导零的日期(例如1-31);
`D`表示星期的3字母缩写(例如Wed);
`l`表示完整英文的星期(例如Wednesday);
`w`表示星期中的第几天(例如0表示星期天);
`W`表示一年中的第几周;
`z`表示一年中的第几天(例如0-366);
通过`Date()`函数,我们可以轻松获取和格式化日期与时间。例如,以下代码将输出当前的中文日期:
运行结果:今天是:2019年04月24日
获取简单的时间同样依赖于`Date()`函数,但我们需要使用一些特定的格式化参数。例如,以下是用于获取时间的常用字符:
`H`表示24小时格式,有前导零(例如08,18);
`h`表示12小时格式,有前导零(例如06,11);
`G`表示24小时格式,无前导零(例如9,17);
`g`表示12小时格式,无前导零(例如6,12);
`i`表示分钟,有前导零(例如00-59);
`s`表示秒,有前导零(例如00 -59);
`A`表示大写的午前和午后(例如AM 或 PM);
`a`表示小写的午前和午后(例如am 或 pm);
`I`表示是否为夏令时;
在获取时间的实例中,下面的代码将输出当前的完整时间:
运行结果:今天是:2019年04月24日 16:34:58 PM
获取时区时,可以通过设置时区参数来确保准确的时间。例如,将时区设置为"Asia/Shanghai",则代码如下:
运行结果:当前时间是:2019年04月24日 16:34:58 PM (上海时区)
为了获取日期信息,可以使用`getdate()`函数。这个函数返回一个数组,包含指定的日期和时间信息,如果没有给出时间戳,则输出本地当前的日期和时间。函数声明如下:
array getdate(int timestamp);
如果需要验证日期的正确性,在程序开发中,可以使用`checkdate()`函数来检查输入的日期是否有效。如果日期有效,返回`true`,否则返回`false`。函数声明如下:
bool checkdate(int month, int day, int year);
时间戳的获取可以通过`time()`函数实现,该函数返回当前时间戳。函数声明如下:
int time();
创建日期时,可以使用`mktime()`函数与`date()`函数。`mktime()`函数返回日期的Unix时间戳,而`date()`函数则用于将时间戳转换为可读的格式。函数语法如下:
时间戳时间的实例代码如下:
运行结果:创建日期是:2015-06-10 09:12:31 AM
通过字符串创建日期时,可以使用`strtotime()`函数。这个函数可以将人类可读的字符串转换为Unix时间戳,从而实现日期和时间的创建。函数语法如下:
字符串时间的实例代码如下:
运行结果:2019-04-25 12:00:00 AM, 2019-04-27 12:00:00 AM, 2019-07-24 05:53:08 PM
需要注意的是,`strtotime()`函数可能不完全准确,因此应检查输入的字符串是否正确。
更多日期实例,例如输出下周六的日期和输出七月四日之前的天数,可以使用`Date()`函数配合其他日期相关函数实现。例如,以下代码展示了输出下周六的日期:
实例代码如下:
运行结果:2019年04月27日
输出七月四日之前的天数的实例代码如下:
运行结果:2019年07月01日
在网站中自动更新版权年份时,可以使用`Date()`函数。以下是一个示例代码,用于在网站上自动更新年份:
实例代码如下:
运行结果:版权所有 © 2019
通过以上介绍,我们可以了解到PHP中获取与格式化时间日期的多种方法,这对于处理时间相关问题非常有用。确保正确使用这些函数,可以提高代码的效率与准确性。希望这些信息能对您在PHP编程中处理时间日期问题有所帮助。
⑥ PHP下获取上个月、下个月、本月的日期
因为工作需要需要获取上个月、下个月、本月的日期,特从网站找到了实现代码,特分享下,方便需要的朋友
今天写程序的时候,突然发现了很早以前写的获取月份天数的函数,经典的switch版,但是获得上月天数的时候,我只是把月份-1了,估计当时太困了吧,再看到有种毛骨悚然的感觉,本来是想再处理一下的,但是一想肯定还有什么超方便的方法,于是找到了下面这个版本,做了一点小修改。
获取本月日期:
代码如下:
function
getMonth($date){
$firstday
=
date("Y-m-01",strtotime($date));
$lastday
=
date("Y-m-d",strtotime("$firstday
+1
month
-1
day"));
return
array($firstday,$lastday);
}
$firstday是月份的第一天,假如$date是2014-2这样的话,$firstday就会是2014-02-01,然后根据$firstday加一个月就是2014-03-01,再减一天就是2014-02-28,用date()和strtotime()真是太方便了。
获取上月日期:
代码如下:
function
getlastMonthDays($date){
$timestamp=strtotime($date);
$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"));
return
array($firstday,$lastday);
}
上月日期需要先获取一个时间戳,然后在月份上-1就OK了,超智能的date()会把2014-0-1这种东西转换成2013-12-01,太爽了。
获取下月日期:
代码如下:
function
getNextMonthDays($date){
$timestamp=strtotime($date);
$arr=getdate($timestamp);
if($arr['mon']
==
12){
$year=$arr['year']
+1;
$month=$arr['mon']
-11;
$firstday=$year.'-0'.$month.'-01';
$lastday=date('Y-m-d',strtotime("$firstday
+1
month
-1
day"));
}else{
$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"));
}
return
array($firstday,$lastday);
}
下月日期的代码看起来比较长一点,因为date()转不了类似2014-13-01这种东西,它会直接回到1970,所以前面需要处理一下12月的问题,除了12月就直接月份+1就OK啦。
总得来说,还是很方便的,日期函数太强大了。
⑦ PHP操作时间戳,以及如何拿到各种时间
在编程过程中,获取时间是一项常见的需求,特别是在使用PHP语言进行开发时。PHP提供了多种方法来获取各种时间,本文将详细介绍其中的两种:date()函数和time()函数。接下来,我们将逐一了解它们的用法。
首先,我们通过date()函数获取时间。该函数的格式为date($format, $timestamp),其中$format用于指定时间格式,$timestamp为时间戳(可选),若未提供,则使用当前时间。例如,获取当前日期和时间,可以使用`date('Y-m-d H:i:s');`。
其次,time()函数用于获取当前时间的Unix时间戳,无需提供参数。时间戳是自1970年1月1日00:00:00 UTC以来的秒数。
再者,strtotime()函数用于将任何英文文本的日期时间描述解析为Unix时间戳。此函数接收两个参数:$time为要解析的时间字符串,$now表示计算返回值的时间戳,若省略则使用当前时间。例如,将"2023-03-15"解析为时间戳可以使用strtotime("2023-03-15");
关于date()函数的字符串格式字符,具体含义如下:
a - "am" 或 "pm",表示上午或下午;
A - "AM" 或 "PM",表示上午或下午全称;
d - 几日,二位数字,不足两位时前面补零;
D - 星期几,三个英文字母,如 "Fri";
F - 月份,英文全名,如 "January";
h - 12小时制的小时,两位数字,不足两位时不补零;
H - 24小时制的小时,两位数字,不足两位时不补零;
g - 12小时制的小时,不足两位时不补零;
G - 24小时制的小时,不足两位时不补零;
i - 分钟,两位数字;
j - 几日,二位数字,不足两位时不补零;
l - 星期几,英文全名,如 "Friday";
m - 月份,二位数字,不足两位时补零;
n - 月份,二位数字,不足两位时不补零;
M - 月份,三个英文字母,如 "Jan";
s - 秒,两位数字;
S - 字尾加英文序数,两位英文字母,如 "th"、"nd";
t - 指定月份的天数;
U - 总秒数;
w - 数字型的星期几,如 "0"(星期日)至 "6"(星期六);
Y - 年,四位数字,如 "1999";
y - 年,二位数字,如 "99";
z - 一年中的第几天,如 "0" 至 "365"。
举例说明strtotime()函数的用法,以下是一些常用的日期格式化时间:
将字符串"2023-03-15"转换为时间戳:strtotime("2023-03-15")
将字符串"15th March, 2023"转换为时间戳:strtotime("15th March, 2023")
将字符串"tomorrow"转换为明天的时间戳:strtotime("tomorrow")
以上详细介绍了PHP中获取时间的方法,包括date()、time()和strtotime()函数的使用,以及date()函数中字符的含义和一些常用的时间格式化例子。这些知识将有助于您在编程中灵活高效地处理日期和时间相关的问题。
⑧ php获取UTC时间戳
echo time();//输出结果:1332224315
echo date(DATE_RFC822);//输出结果:Tue, 20 Mar 12 06:18:35 +0000
如果需要其他的时间格式,可以参考w3school上的Date()函数操作手册,地址: http://www.w3school.com.cn/php/php_ref_date.asp