Passed
Push — master ( a9ba5a...6cd513 )
by Бабичев
02:53
created

JSON   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 100%

Importance

Changes 3
Bugs 0 Features 0
Metric Value
wmc 3
c 3
b 0
f 0
lcom 0
cbo 0
dl 0
loc 32
ccs 6
cts 6
cp 1
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A encode() 0 9 2
A decode() 0 4 1
1
<?php
2
3
namespace Bavix\Helpers;
4
5
class JSON
6
{
7
8
    /**
9
     * @param mixed $value
10
     * @param int   $options
11
     *
12
     * @return string
13
     */
14 3
    public static function encode($value, $options = JSON_UNESCAPED_UNICODE | JSON_NUMERIC_CHECK)
15
    {
16 3
        if ($value instanceof \Traversable)
17
        {
18 1
            $value = \iterator_to_array($value);
19
        }
20
21 3
        return \json_encode($value, $options);
22
    }
23
24
    /**
25
     * @param string $json
26
     * @param bool   $assoc
27
     * @param int    $options
28
     *
29
     * @return mixed
30
     */
31 1
    public static function decode($json, $assoc = true, $options = 0)
32
    {
33 1
        return \json_decode($json, $assoc, 512, $options);
34
    }
35
36
}
37