Completed
Pull Request — master (#22)
by De Cramer
02:18
created

Time   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 4
lcom 0
cbo 0
dl 0
loc 37
ccs 11
cts 11
cp 1
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A milisecondsToTrackmania() 0 9 2
A trackmaniaToMiliseconds() 0 9 2
1
<?php
2
3
namespace eXpansion\Core\Helpers;
4
5
class Time
6
{
7
    /**
8
     * Transform milliseconds date into trackmania format.
9
     *
10
     * @param $time
11
     * @param bool $milliseconds
12
     *
13
     * @return string
14
     */
15 1
    public function milisecondsToTrackmania($time, $milliseconds = false)
16
    {
17 1
        $time = intval($time);
18 1
        $ms = "";
19 1
        if ($milliseconds) {
20 1
            $ms = ":".str_pad(($time % 1000), 3, '0', STR_PAD_LEFT);
21
        }
22 1
        return gmdate("i:s", $time / 1000).$ms;
23
    }
24
25
    /**
26
     * Transform trackmania formated time in miliseconds.
27
     *
28
     * @param $string
29
     *
30
     * @return int
31
     */
32 1
    public function trackmaniaToMiliseconds($string)
33
    {
34 1
        $timeLimit = explode(":", trim($string));
35 1
        if (count($timeLimit) == 1) {
36 1
            return intval($timeLimit[0] * 1000);
37
        } else {
38 1
            return intval($timeLimit[0] * 60 * 1000) + intval($timeLimit[1] * 1000);
39
        }
40
    }
41
}
42