Passed
Push — master ( 96a242...86f978 )
by Alec
03:01
created

value()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 1
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 2
eloc 1
c 1
b 0
f 1
nc 2
nop 1
dl 0
loc 3
ccs 1
cts 1
cp 1
crap 2
rs 10
1
<?php
2
/**
3
 * User: alec
4
 * Date: 12.10.18
5
 * Time: 13:21
6
 */
7
8
if (!function_exists('env')) {
9
    /**
10
     * Gets the value of an environment variable.
11
     *
12
     * @param  string $key
13
     * @param  mixed $default
14
     * @return mixed
15
     */
16
    function env($key, $default = null)
17
    {
18 38
        if (false === $value = getenv($key)) {
19 18
            $value = value($default);
20
        }
21
22 38
        $value = \ltrim(\rtrim($value, ')"'), '("');
23
24 38
        switch (strtolower($value)) {
25
            case 'true':
26 4
                $value = true;
27 4
                break;
28
            case 'false':
29 4
                $value = false;
30 4
                break;
31
            case 'empty':
32 4
                $value = '';
33 4
                break;
34
            case 'null':
35 4
                $value = null;
36 4
                break;
37
        }
38
39 38
        return $value;
40
    }
41
}
42
43
if (!function_exists('value')) {
44
    /**
45
     * Return the default value of the given value.
46
     *
47
     * @param  mixed $value
48
     * @return mixed
49
     */
50
    function value($value)
51
    {
52 18
        return $value instanceof Closure ? $value() : $value;
53
    }
54
}