删除时间戳的时间部分



如何删除时间戳的时间部分?

例如,将1310571061转换为1310565600,这是一个简单的日期时间戳。

strtotime(date("Y-m-d", 1310571061));

这应该对你有用。

如果您想要一个数学解决方案:

$time=1310571061;
echo floor($time/86400)*86400;

24小时内有86400秒(这是典型一天的长度,但不是全部…请参阅夏令时(。由于我们的时间戳是UTC,这应该不是问题。你可以把它除以一天中的秒数,去掉余数,再乘回来。

使用DateTime对象会很有帮助,还可以使代码更可读。。。

$dt = new DateTime();
$dt->setTimestamp(1310571061);
echo $dt->format('Y-m-d, H:i:s') . "rn";
$dt->setTime(0, 0, 0);
echo $dt->format('Y-m-d, H:i:s');

结果。。。

2011年7月14日03:31:01

2011年7月14日00:00:00

选择是使用原始时间戳还是使用DateTime对象在很大程度上取决于实现需求,但一般来说,DateTime对象将大大减少可能出现的混乱和错误,尤其是在时区问题和夏令时问题上。

尝试:

<?php
$ts = '1310571061';
echo strtotime(date('Y-m-d 00:00:00', $ts));
?>
$pubdate='2003-02-19T00:00:00.000-05:00';
   $da = strtotime($pubdate);
   echo $dat = date('Y-m-d', $da);

答案是:"2003-02-19">

谢谢

你可以做:

$date = strotime(date("y/m/d", $timestamp));   

这是我通常要做的:

your_timestamp = pd.to_datetime(your_timestamp.strftime(format="%x"))

函数strftime将把your_timestamp转换为不带时间分量的字符串。然后函数pd.to_datetime将把它转换回没有时间分量的Timestamp

相关内容

  • 没有找到相关文章

最新更新