当尝试与php时间戳进行比较时,我似乎得到了off值。不确定我错过了什么。
我希望我的输出结果是这样的
3天5小时10分钟,从x开始
我正在尝试一些应该只有几分钟差的东西,但最终得到的数字非常差(31天19小时11分钟)
$timesince = time() - $firstdate;
$dsince = date("d",$timesince);
$hsince = date("G",$timesince);
$msince = date("i",$timesince);
我猜我需要用不同的方式来做这件事?
发布于 2011-05-17 00:14:51
date()接受绝对时间戳值,而不是两个值之间的差值。您需要手动解析差异(除以3600,然后再除以60等)在注释http://php.net/manual/en/function.time.php中有一些示例
发布于 2011-05-17 00:15:02
您可能已经知道,time()
以Unix时间戳格式返回当前时间。PHP也必须是这种格式,或者它应该是转换使用strtotime()
$firstdate
函数。
您使用的解决方案是错误的-这将不适用于更长的差异等。您必须进行一些额外的计算,将秒内的差异转换为关于天、小时和分钟的差异。
编辑:
您可以在Kohana3PHP中找到示例和正确的解决方案(span()
方法):http://kohanaframework.org/3.1/guide/api/Kohana_Date#span
发布于 2011-05-17 00:15:55
您可以尝试使用here on php.net函数。
https://stackoverflow.com/questions/6020151
复制相似问题