我有两列time
和distance
,其值分别为12:00:04 AM
和0.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答案不同。
我如何才能实现这一目标?
答案 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