php获取时间计算时间差

用php获取本周、本月第一天与最后天时间戳。

1,获取今天的时间范围:

<?php
$start = mktime(0,0,0,date("m"),date("d"),date("Y"));
$end = mktime(0,0,0,date("m"),date("d")+1,date("Y")); 

2,获取本周第一天/最后一天的时间戳

<?php
$year = date("Y");
$month = date("m");
$day = date(‘w‘);
$nowMonthDay = date("t");

$firstday = date(‘d‘) - $day;
if(substr($firstday,0,1) == "-"){
 $firstMonth = $month - 1;
 $lastMonthDay = date("t",$firstMonth);
 $firstday = $lastMonthDay - substr($firstday,1);
 $time_1 = strtotime($year."-".$firstMonth."-".$firstday);
}else{
 $time_1 = strtotime($year."-".$month."-".$firstday);
}

$lastday = date(‘d‘) + (7 - $day);
if($lastday > $nowMonthDay){
 $lastday = $lastday - $nowMonthDay;
 $lastMonth = $month + 1;
 $time_2 = strtotime($year."-".$lastMonth."-".$lastday);
}else{
 $time_2 = strtotime($year."-".$month."-".$lastday);
}

3,获取本月第一天/最后一天的时间戳

<?php
$year = date("Y");
$month = date("m");
$allday = date("t");
$strat_time = strtotime($year."-".$month."-1");
$end_time = strtotime($year."-".$month."-".$allday);

计算时间差

$one = strtotime(‘2011-12-08 07:02:40‘);//开始时间 时间戳
$tow = strtotime(‘2011-12-25 00:00:00‘);//结束时间 时间戳
$cle = $tow - $one; //得出时间戳差值

$d = floor($cle/3600/24);
$h = floor(($cle%(3600*24))/3600);  //%取余
$m = floor(($cle%(3600*24))600/60);
$s = floor(($cle%(3600*24))`);

echo "两个时间相差 $d 天 $h 小时 $m 分 $s 秒"

原文地址:https://www.cnblogs.com/yixing/p/8992215.html

时间: 2024-08-05 17:46:20

php获取时间计算时间差的相关文章

根据已知时间计算时间差

public String getSpendTime(TechScheduleServiceBean bean) { TechScheduleBean bean2 = bean.getBean(); long beginTime = bean2.getBegin_time().getTime(); long endTime = bean2.getEnd_time().getTime(); double days = (endTime-beginTime) / (1000 * 60 * 60 *

【转载】c/c++在windows下获取时间和计算时间差的几种方法总结

一.标准C和C++都可用 1.获取时间用time_t time( time_t * timer ),计算时间差使用double difftime( time_t timer1, time_t timer0 ). 精确到秒. 测试程序如下: #include <time.h> #include <stdio.h> int main() { time_t start ,end ; double cost; time(&start); sleep(1); time(&en

linux获取时间函数及计算时间差

参考:   http://www.cnblogs.com/krythur/archive/2013/02/25/2932647.html 第一章  获取时间函数 1. char * asctime(const struct tm * timeptr); 函数说明 asctime()将参数timeptr所指的tm结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果以字符串形态返回.此函数已经由时区转换成当地时间,字符串格式为:"Wed Jun 30 21:49:08 1993\n&quo

c和c++在windows下获取时间和计算时间差的方法总结

c/c++在windows下获取时间和计算时间差的几种方法总结 一.标准C和C++都可用 1.获取时间用time_t time( time_t * timer ),计算时间差使用double difftime( time_t timer1, time_t timer0 ). 精确到秒. 测试程序如下: 1 #include <time.h> 2 #include <stdio.h> 3 4 int main() 5 { 6 time_t start, end; 7 double c

获取时间和计算时间差的几种方法总结

转载自:http://blog.csdn.net/coder_xia/article/details/6566708 一.标准C和C++都可用 1.获取时间用time_t time( time_t * timer ),计算时间差使用double difftime( time_t timer1, time_t timer0 ). 精确到秒. 测试程序如下: 1 #include <time.h> 2 #include <stdio.h> 3 int main() 4 { 5 time

js中如何将字符串转化为时间,并计算时间差

在前台页面开发时通常会用到计算两个时间的时间差,先在此附上实现方法 [javascript] view plain copy //结束时间 end_str = ("2014-01-01 10:15:00").replace(/-/g,"/");//一般得到的时间的格式都是:yyyy-MM-dd hh24:mi:ss,所以我就用了这个做例子,是/的格式,就不用replace了. var end_date = new Date(end_str);//将字符串转化为时间

Delphi中获取Unix时间戳及注意事项(c语言中time()是按格林威治时间计算的,比北京时间多了8小时)

uses DateUtils;DateTimeToUnix(Now) 可以转换到unix时间,但是注意的是,它得到的时间比c语言中time()得到的时间大了8*60*60这是因为Now是当前时区的时间,c语言中time()是按格林威治时间计算的,北京时间比格林威治时间多了8小时DateTimeToUnix(Now)-8*60*60 就和c语言中time()得到的一样了 但我进一步研究DateTimeToUnix函数时发现,Delphi中的时间没有经过任何的转换,是直接读取系统时间 我试着改变当前

php计算时间差/两个时间日期相隔的天数,时,分,秒.

<?php function timediff( $begin_time, $end_time ) { if ( $begin_time < $end_time ) { $starttime = $begin_time; $endtime = $end_time; } else { $starttime = $end_time; $endtime = $begin_time; } $timediff = $endtime - $starttime; $days = intval( $timed

Java获取时间 时间计算 转换时间工具类

Java获取时间 时间计算 转换时间工具类 JAVA日期工具类 package com.mh.util; import java.sql.Timestamp; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * 时间日期转换工具类 */ public class DateTimeUtil { /** *