Passed
Push — develop ( 1442ab...c78988 )
by Fu
51s queued 10s
created

ResponseParseTrait::parseData()   A

Complexity

Conditions 5
Paths 3

Size

Total Lines 9
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 5
eloc 7
nc 3
nop 1
dl 0
loc 9
rs 9.6111
c 0
b 0
f 0
1
<?php
2
3
namespace Modules\Core\Traits\Supports;
4
5
use Illuminate\Support\Arr;
6
7
trait ResponseParseTrait
8
{
9
    protected static function parseMeta($data)
10
    {
11
        if ((is_array($data) && Arr::has($data, 'meta'))) {
12
            return Arr::get($data, 'meta');
13
        } else {
14
            return [];
15
        }
16
    }
17
18
    protected static function parseData($data)
19
    {
20
        if (is_array($data) && Arr::has($data, 'data')) {
21
            return Arr::get($data, 'data');
22
        } else {
23
            if (is_string($data) && json_decode($data)) {
24
                return json_decode($data);
25
            } else {
26
                return $data;
27
            }
28
        }
29
    }
30
31
    protected static function parseDataMeta($data)
32
    {
33
        if (is_array($data) && Arr::has($data, 'meta')) {
34
            return Arr::except($data, 'meta');
35
        } else {
36
            return $data;
37
        }
38
    }
39
}
40