/** * 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); }
} ?>
分享到:
相关推荐
在C语言中处理时间戳与不同时区时间的转换是常见的需求,特别是在跨时区的数据交换和存储中。本文将深入探讨UTC时间戳与北京时间的转换,并提供一个C语言的源码示例。 首先,我们需要了解C语言中的`time.h`头文件,...
在本文中,我们将深入探讨Unix时间戳与北京时间的转换,以及如何在C#中进行这种转换。 首先,让我们理解Unix时间戳和北京时间之间的关系。北京时间是基于东八区的协调世界时间(UTC+08:00),因此在计算时需要考虑...
在这个教程中,我们将深入探讨如何在Android环境中获取时间戳以及如何将时间戳转换为可读的日期和时间。 首先,我们来了解如何在Android中获取当前的时间戳。在Java中,我们可以使用`System.currentTimeMillis()`...
总结:这款“时间戳转换图片Base64转换小工具”集合了多种实用功能,包括时间戳与日期的相互转换、图片的Base64编码与解码、Base64数据的加解密、MD5哈希计算以及秒表计时。此外,它还能方便地调用系统计算器,满足...
本文将深入探讨时间戳与标准日期时间之间的转换,并提供相关编程示例。 首先,让我们了解什么是标准日期时间。标准日期时间是指按照国际标准ISO 8601定义的日期和时间格式,例如"2023-03-15T14:30:00Z",其中"Z...
在各种编程语言和系统中,时间戳被广泛用于记录事件发生的时间,进行时间比较,以及处理与时间相关的数据。 标题提到的"Timstamp时间戳转日期时间双向转换工具"是一个实用的软件工具,它可以帮助用户将时间戳转换为...
时间戳 与 时间 的转换。 确定好Convert.ToInt64 还是 Convert.ToInt32
在嵌入式系统中处理时间通常涉及到时间戳与时间的相互转换,这对于记录事件发生的时间、定时任务或者与其他系统进行时间同步等功能至关重要。本文将深入探讨C语言中如何实现时间戳与时间的转换,并提供适用于嵌入式...
本文将深入探讨在VB(Visual Basic)环境中如何进行时间戳与时间之间的转换,以帮助开发者获取所需结果。 时间戳,也称为Unix时间戳,是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不包括闰秒。在VB中,...
UTC时间戳与北京时间转换
时间excel需要将13时间戳和10位时间戳转换成标准时间的人群
#### 一、Tableau 时间戳转换背景与意义 在数据分析领域,尤其是使用Tableau进行数据可视化时,经常需要处理时间戳数据。时间戳通常表示从某个特定时间点(如1970年1月1日00:00:00 UTC)起经过的时间,单位通常是秒...
易语言日期时间戳转换,也就是把日期时间转换成数值的形式,方便操作!易语言日期时间戳转换,也就是把日期时间转换成数值的形式,方便操作!易语言日期时间戳转换,也就是把日期时间转换成数值的形式,方便操作!...
Unix系统下时间戳的设置
在编程领域,时间戳与日期时间的转换是常见的操作,特别是在处理系统时间、日志记录或者数据存储时。本文将详细讲解如何在不依赖库函数的情况下,使用纯代码实现时间戳与日期时间的互转。 首先,让我们了解什么是...
整个代码可直接编译运行;Unix时间戳转北京时间,用到“time.h”头文件,是C语言的标准库,使用...UTC时间转化成北京时间,思路:把UTC时间转换成时间戳,然后时间戳数值加上八小时,再把时间戳转化成北京时间。
这个`timeToDate.js`文件提供了一个重载函数,用于在时间戳和时间格式之间进行灵活转换。这种功能对于处理日期和时间的前端应用尤其有用,比如在用户界面中展示或接收时间数据。 函数接受一到两个参数,根据参数...
对于不同的应用场景,我们需要将日期时间转换为便于计算的形式,例如Unix时间戳(即从1970年1月1日00:00:00 UTC起至当前时间的秒数),或者将时间戳转换回可读的时间格式。在Visual Basic (VB) 中,可以通过自定义...
13位时间戳与标准的Unix时间戳有所不同,标准的Unix时间戳是10位或13位数字,表示从1970年1月1日00:00:00 UTC起的秒数,而13位时间戳则包含毫秒级的精度。这种工具对于开发者来说非常有用,因为他们经常需要处理这种...
时间戳(Long)转字符串,字符串转时间戳工具包 ,操作方便。