Completed
Push — master ( 2c411c...793505 )
by Andrea Marco
03:37
created

FloatTransformation   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 2
eloc 6
dl 0
loc 19
ccs 6
cts 6
cp 1
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A apply() 0 11 2
1
<?php
2
3
namespace Cerbero\Transformer\Transformations;
4
5
/**
6
 * Transform a value into a float.
7
 *
8
 */
9
class FloatTransformation extends AbstractTransformation
10
{
11
    /**
12
     * Apply the transformation
13
     *
14
     * @param array $parameters
15
     * @return mixed
16
     */
17 27
    public function apply(array $parameters)
18
    {
19 27
        $value = floatval($this->value);
20
21 27
        if (!isset($parameters[0])) {
22 3
            return $value;
23
        }
24
25 27
        $exponent = pow(10, $parameters[0]);
26
27 27
        return floor($value * $exponent) / $exponent;
28
    }
29
}
30