Passed
Push — develop ( b56c9b...8f186e )
by Fu
03:26 queued 12s
created

ResponseParseTrait   A

Complexity

Total Complexity 10

Size/Duplication

Total Lines 23
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 14
dl 0
loc 23
rs 10
c 0
b 0
f 0
wmc 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A parseMeta() 0 6 3
B parseData() 0 12 7
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, 'meta')) {
21
            Arr::forget($data, 'meta');
22
        }
23
        if (is_array($data) && Arr::has($data, 'data')) {
24
            return Arr::get($data, 'data');
25
        } else {
26
            if (is_string($data) && json_decode($data)) {
27
                return json_decode($data);
28
            } else {
29
                return $data;
30
            }
31
        }
32
    }
33
}
34