如何根据Excel公式计算速度?

时间:2015-06-03 11:56:40

标签: php date datetime time

我有两列timedistance,其值分别为12:00:04 AM0.0088626。在Excel中,我应用以下公式来查找速度:

=IFERROR(A2/(B2*1000)*1000,0)

,答案是12:07:31 AM

我试图在PHP中按照上述公式找出速度。我编写了PHP代码:

$dis = 0.0088626;
$time =  strtotime('12:00:04 AM');
echo date('h:i:s',strtotime(($time / ($dis * 1000) * 1000)));

,答案是1:00:00

Excel和PHP答案不同。

我如何才能实现这一目标?

1 个答案:

答案 0 :(得分:2)

您需要使用我之前展示的代码将PHP的unix时间戳转换为Excel序列化的时间戳值,以便在等式中使用

$dis = 0.0088626;

$x = strtotime("12:00:04 AM");
$y = strtotime("00:00:00");

$time = ($x - $y) / 86400;

$result = ($time / ($dis * 1000) * 1000);

然后,一旦计算了结果,就需要将其从Excel序列化时间戳值转换回unix时间戳,以便可以使用PHP的日期函数

$result *= 86400;
echo date('h:i:s A', $result), PHP_EOL;

显示答案12:07:31 AM