/** * fun.TimeApi.php

* * GMT 系列 - 功能库接口 1

* * 功能库名: 时间处理功能库接口

* * 功能库内容介绍:

* 1. 格林威治时间快速转时间戳

* 2. 时间戳转格林威治时间

* 3. 计算时间间隔

* 4. 判断是否闰年

* 5. 闰年间隔判断

*/ /** * 把格林威治时间转为时间戳 */

function GmtToUnix($GmtDate)

{

$DateArr = explode(' ',$GmtDate); // 分割GMT日期为 日期 | 时间

/* 在日期中取得年,月,日 */

$pDate = split('[/.-]',$DateArr[0]);

$Year = $pDate[0];

$Month = $pDate[1];

$Day = $pDate[2];

/* 在时间中取得时,分,秒 */

$pTime = split('[:.-]',$DateArr[1]);

$Hour = $pTime[0];

$Minute = $pTime[1];

$Second = $pTime[2];

if($Year == '' || !is_numeric($Year))

$Year = 0;

if($Month == '' || !is_numeric($Month))

$Month = 0;

if($Day == '' || !is_numeric($Day))

$Day = 0;

if($Hour == '' || !is_numeric($Hour))

$Hour = 0;

if($Minute == '' || !is_numeric($Minute))

$Minute = 0;

if($Second == '' || !is_numeric($Second))

$Second = 0;

return mktime($Hour,$Minute,$Second,$Month,$Day,$Year);

}

/** * 把时间戳转换为格林威治时间 *

* 建议使用php自带的 gmdate / date */

function UnixToGmt($format_string = "Y-m-d H:i:s" ,$UnixTime = 0)

{ return @gmdate($format_string,$UnixTime); }

/** * 计算时间间隔 */

function DiffDateTime($interval,$diff_datetime1,$diff_datetime2)

{

if(is_numeric($diff_datetime1) && !is_numeric($diff_datetime2))

$_datetime1 = $diff_datetime1;

$_datetime2 = GmtToUnix($diff_datetime2);

if(!is_numeric($diff_datetime1) && is_numeric($diff_datetime2));

$_datetime1 = GmtToUnix($diff_datetime1);

$_datetime2 = $diff_datetime2;

if(is_numeric($diff_datetime1) && is_numeric($diff_datetime2))

$_datetime1 = $diff_datetime1;

$_datetime2 = $diff_datetime2;

if(!is_numeric($diff_datetime1) && is_numeric(!$diff_datetime2))

$_datetime1 = GmtToUnix($diff_datetime1);

$_datetime2 = GmtToUnix($diff_datetime2);

$diffUnixSec = $_datetime1 - $_datetime2;

switch ($interval)

{

case 'Y': return bcdiv($diffUnixSec, 31536000); break;

case 'W': return bcdiv($diffUnixSec, 604800); break;

case 'D': return bcdiv($diffUnixSec, 86400); break;

case 'H': return bcdiv($diffUnixSec, 3600); break;

case 'M': return bcdiv($diffUnixSec, 60); break;

case 'S': return $diffUnixSec; break;

default: return false;

} }

/** * 闰年判断 * @return boolean */

function isLeapYear($Year)

{ if(bcmod($Year,4) == 0 && bcmod($Year,100) !== 0 || bcmod($Year,400) == 0)

{ return true; }

else { return false; }

}

/** * 闰年间隔计算 */

function NextLeapYear($Year,$return_year = false)

{ if($return_year)

{ return $Year + (4 - (int)bcmod($Year,4)); }

else { return 4 - (int)bcmod($Year,4); }

} ?>

php格林威治时间,时间戳与格林威治时间互相转换相关推荐

  1. 格林威治时间如何转为系统时间?

    #include "time.h" #include "stdio.h" int main(void) { //struct tm *ptr; char* p; ...

  2. php 时间戳 时区,PHP时间函数 时间戳 设置时区

    目录: 什么是时间戳 设置时区的方式 与时间相关的函数 1.什么是时间戳 现实中如何表示时间? 中国:2020年10月9日 下午3点30分 外国:9/10/2020 世界各国时间表示方式不一样,导致计 ...

  3. swift 时间时间戳获取及相互转换

    1.时间戳(time stamp) 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数 2.获取当下时间戳&时间 ...

  4. js 时间戳与日期时间的相互转换

    js 时间戳与日期时间的相互转换 时间戳:指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总毫秒数. 1.获取时间戳 1)获取当前时 ...

  5. java通过时间戳获取当前时间

    java中的时间戳 时间戳 获取当前时间戳 获取当前时间 时间戳工作效率对比 时间戳 时间戳时指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒) ...

  6. Python时间转换函数:时间转化为时间戳、时间戳转化为时间、当前日期、当前时间、星期几、前面或者后面多少天、年、月、日等

    Python时间转换函数:时间转化为时间戳.时间戳转化为时间.当前日期.当前时间.星期几.前面或者后面多少天.年.月.日等 #Python时间转换函数:时间转化为时间戳.时间戳转化为时间.当前日期.当 ...

  7. 时间戳转化为时间格式 时间格式转为时间戳

    // 时间戳转化为时间Date.prototype.format = function(format) {var date = {"M+": this.getMonth() + 1 ...

  8. PHP获取当前时间戳,当前时间、及解决时区问题

    PHP获取当前时间戳,当前时间.及解决时区问题 参考文章: (1)PHP获取当前时间戳,当前时间.及解决时区问题 (2)https://www.cnblogs.com/daochong/p/99578 ...

  9. 用时间戳判断两个时间是否在同一天和时区转换问题

    用时间戳判断两个时间是否在同一天和时区转换问题 //用时间戳判断两个时间是否在同一天和时区转换问题#include "stdafx.h" #include<stdio.h&g ...

  10. js中时间戳与日期时间之间的相互转换

    1.时间戳转换为标准日期时间格式: function timeFormat(dateStr) {var date = new Date(dateStr);Y = date.getFullYear() ...

最新文章

  1. MATLAB 练习题 金币
  2. 一文讲透 “进程、线程、协程”
  3. Java 并发编程73道面试题及答案 ——面试看这篇就够了!
  4. 红帽杯——childRE
  5. seurat提取表达矩阵_单细胞数据分析神器——Seurat
  6. ---WebCam网络摄像头11 http协议
  7. 远程登录的几种方式对比
  8. Tomcat Server的结构图
  9. 毕业设计管理系统小结
  10. c++实现高斯滤波器
  11. EXP-00091 Exporting questionable statistics
  12. 优秀笔记课件——Access数据库
  13. 大学想选择计算机专业,零基础如何快速学习编程?都是经验之谈
  14. 【机器学习】吴恩达机器学习Deeplearning.ai
  15. 多线程有几种实现方法,同步有几种实现方法
  16. Python基础篇学习
  17. 灰色预测之GM(1,1),教你快速上手数学建模!
  18. 康耐视智能相机Insight内置FTP存图
  19. S2B2C商城系统(分销商城)哪家好?S2B2B商城系统好在哪?
  20. Cocos2d-X 3.4版-扣血飘字 《赵云要格斗》

热门文章

  1. 中职学校计算机教学参考文献,中职计算机教学论文
  2. MAC 清除 DNS 缓存
  3. Ubuntu系统中清理DNS缓存
  4. JAVA.犹抱琵琶半遮面
  5. HTML项目立项,作为承建方,其项目立项的第一步工作是()。A.编制立项申请书B.项目论证C.项目 - 信管网...
  6. Jenkins Bitbucket Java 部署
  7. httpclient中警告Encrypted Alert后断开连接问题处理
  8. Elasticsearch 7.1API 文档翻译
  9. SCTF-RE200破解笔记
  10. 【联盛德W806上手笔记】九、DMA