您的位置:首页 > 编程语言 > PHP开发

PHP时间戳和日期的相互转换

2017-08-07 20:17 375 查看
不管是进行统计还是在平常的php使用过程中需要使用时间转换的有很多,在这里简单做一下总结:

一、php中时间转换函数

1.strtotime()

语法:strtotime(time,now);

参数:time:必需,规定日期时间字符串

    now:可选,规定用来计算返回值的时间戳.如果省略该参数,则使用当前时间

2.date()

语法:date(format,timestamp)

参数:format:必需,规定时间戳的格式

            timestamp:可选,规定时间戳,默认是当前时间和日期

二、实例

1.简单示例:使用php获得今天零点的时间戳

$todaytime=strtotime("today"),

可以再使用data("Y-m-d H:i",$todaytime)转换为日期

2.使用实例:php获得今日,昨日,上周,本月,本季度,本年的起始时间戳和结束时间戳

php获取今日开始时间戳和结束时间戳

$beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));

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

php获取昨日开始时间戳和结束时间戳

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

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

php获取上周开始时间戳和结束时间戳

$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'));

php获取本月开始时间戳和结束时间戳

$beginThismonth=mktime(0,0,0,date('m'),1,date('Y'));

$endThismonth=mktime(2
4000
3,59,59,date('m'),date('t'),date('Y'));

php获取本季度开始时间戳和结束时间戳

$getMonthDays = date("t",mktime(0, 0 , 0,date('n')+(date('n')-1)%3,1,date("Y")));//本季度未最后一月天数

$beginQuarter=mktime(0, 0, 0,date('n')-(date('n')-1)%3,1,date('Y'));

$endQuarter=mktime(23,59,59,date('n')+(date('n')-1)%3,$getMonthDays,date('Y'));

php获取本年开始时间戳和结束时间戳

 $beginYear=strtotime(date('Y-01-01',time())),

 $endYear=strtotime(date('Y-01-01',time()).'+1 year');

或者

 $startYeartime=date('Y-01-01',time());

 $endYeartime=date('Y-12-31',time());

 $startYear=strtotime("{$startYeartime} 00:00:00");

 $endYear=strtotime("{$endYeartime} 23:59:59");

php获取去年开始时间戳和结束时间戳

$beginLastyear=mktime(0,0,0,1,1,date('Y',strtotime("-1 year")));

$endLastyear=mktime(23,59,59,12,date('t',strtotime("December")),date('Y',strtotime("-1
year")));

转载自:php程序员的笔记

地址:http://www.phpernote.com/php-function/635.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息