1. 如何利用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时间戳,实现所需要的日期时间。
2. 在php中如何获得未来时间
php获取昨天、今天、明天、上周、本月、一年后、十年后的开始时间戳和结束时间戳:
//php获取昨天日期
date("Y-m-d",strtotime("-1day"))
//php获取明天日期
date("Y-m-d",strtotime("+1day"))
//php获取一周后日期
date("Y-m-d",strtotime("+1week"))
//php获取一周零两天四小时两秒后时间
date("Y-m-dG:H:s",strtotime("+1week2days4hours2seconds"))
//php获取下个星期四日期
date("Y-m-d",strtotime("nextThursday"))
//php获取上个周一日期
date("Y-m-d",strtotime("lastMonday"))
//php获取一个月前日期
date("Y-m-d",strtotime("lastmonth"))
//php获取一个月后日期
date("Y-m-d",strtotime("+1month"))
//php获取十年后日期
date("Y-m-d",strtotime("+10year"))
//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'));
3. PHP时间戳如何获取当前时间前一个月的此时时间
直接去当前时间戳,减去 30*24*3600
4. php 日期循环
//简单写下,用日期差,具体的日期转换自己查,转换成时间戳计算
$time=mktime(0,0,0,date('Y'),date('m'),date('d'));//当前时间转换为时间戳,或者可以自己定义一个日期
//一天是86400,那么7天是多少,=$cha
//然后$time-$cha,转换成想要的日期格式,我不记得了,用T(time)表示
for($i=0;$i<列表行数;$i++){
echoT($time-$cha*($i+1))."->".T($time-$cha*$i);
}
5. 新手php时间戳的问题如何获取每天凌晨的时间戳
方法有很多
第一种:
$today_zero=strtotime('today');//说明:strtotime支持英语
第二种:
$today_zero=strtotime(date('Y-m-d',time()));//说明:先获取现在的时间所在的日期格式2013-09-01,然后把它转换为时间戳
其中,第二种还可以简单点写:$today_zero=strtotime(date('Y-m-d'));
也就是说,不填当前时间,也是可以的
6. 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