时间戳与时间相互转换(php .net精确到毫秒)
/**获取当前时间戳,精确到毫秒*/
functionmicrotime_float()
{
list($usec,$sec)=explode("",microtime());
return((float)$usec+(float)$sec);
}
/**格式化时间戳,精确到毫秒,x代表毫秒*/
functionmicrotime_format($tag,$time)
{
list($usec,$sec)=explode(".",$time);
$date=date($tag,$usec);
returnstr_replace('x',$sec,$date);
}
使用方法:
1.获取当前时间戳(精确到毫秒):microtime_float()
2.时间戳转换时间:microtime_format('Y年m月d日H时i分s秒x毫秒',1270626578
.net时间戳互相转换(精确到毫秒)
这里记录一个时间戳的互相转换方法,网上都找了,基本都没有精确到毫秒,我的这个基本可以满足精确到毫秒的级别,代码如下:
///<summary>
///Unix时间戳转换为DateTime
///</summary>
privateDateTimeConvertToDateTime(stringtimestamp)
{
System.DateTimetime=System.DateTime.MinValue;
//精确到毫秒
//时间戳转成时间
DateTimestart=TimeZone.CurrentTimeZone.ToLocalTime(newSystem.DateTime(,,));
try
{
time=timestamp.Length==?start.AddSeconds(long.Parse(timestamp)):start.AddMilliseconds(long.Parse(timestamp));
}
catch(Exceptionex)
{
returnstart;//转换失败
}
returntime;
}
///<summary>
///DateTime转换为Unix时间戳
///</summary>
///<paramname="time"></param>
///<returns></returns>
privatestringConvertTimestamp(DateTimetime)
{
doubleintResult=;
System.DateTimestartTime=TimeZone.CurrentTimeZone.ToLocalTime(newSystem.DateTime(,,));
intResult=(time-startTime).TotalMilliseconds;
returnMath.Round(intResult,).ToString();
}