PHP从总时间的X百分比中获取时间

时间:2017-03-30 17:44:04

标签: php

我不知道这是否有意义,但我想从一个值的百分比中获取时间,我将以下作为输入示例:

Month_Year              MV                    MI
----------------------------------------------------------
2016 08                  3                    100
2016 10                  2                    150
2016 09                  1                    100
2017 01                  4                    200

正如你所看到的,我的时间是60分钟(1小时),其中50%是30分钟,因此从上面的2个输入中我希望获得以下输出 (50%的一小时):

mypercentage = 50; 
mytime = "00:59:59"

2 个答案:

答案 0 :(得分:2)

  1. 将字符串分解为数组
  2. 将3个元素转换为数字

  3. 以秒为单位查找值。 $数组[0] * 3600 + $阵列[1] * 60 + $阵列[2]

  4. 根据步骤3中的值和百分比计算时间。

  5. 使用/ 3600和/ 60查找小时和分钟,使用%60查找秒数。

  6. 将值放入数组并内嵌到字符串中,或​​者只使用

    $小时。 “:” $分钟。 “:”。$第二

答案 1 :(得分:0)

感谢所有回复的人,我发现这个解决方案有效:

            $mypercentage = 50;
            $mytime = '00:59:59';

            $totaltime = date('H:i:s', strtotime($mytime));

            $seconds = strtotime("1970-01-01 $totaltime UTC");

            $per_seconds = ($mypercentage / 100) * $seconds;

            $time_from_percentage = gmdate("H:i:s", $per_seconds);
            echo $time_from_percentage;