Passed
Push — master ( f42836...c033cf )
by Albert
03:51 queued 10s
created

Dumper   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 13
dl 0
loc 28
rs 10
c 0
b 0
f 0
wmc 6

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getDumper() 0 7 3
A dump() 0 15 3
1
<?php
2
3
namespace SwooleTW\Http\Helpers;
4
5
use Symfony\Component\VarDumper\Cloner\VarCloner;
6
use Symfony\Component\VarDumper\Dumper\CliDumper;
7
use Symfony\Component\VarDumper\Dumper\HtmlDumper;
8
9
class Dumper
10
{
11
    protected static $cloner;
12
13
    public static function dump(...$args)
14
    {
15
        if (! static::$cloner instanceOf VarCloner) {
16
            static::$cloner = new VarCloner;
17
        }
18
19
        $dumper = static::getDumper();
20
21
        foreach ($args as $arg) {
22
            $dumper->dump(
23
                static::$cloner->cloneVar($arg)
24
            );
25
        }
26
27
        return true;
28
    }
29
30
    public static function getDumper()
31
    {
32
        $dumper = defined('IN_PHPUNIT') || ! config('swoole_http.ob_output')
33
            ? CliDumper::class
34
            : HtmlDumper::class;
35
36
        return new $dumper;
37
    }
38
}
39