ManageMessages   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 27
Duplicated Lines 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
wmc 4
eloc 10
c 2
b 0
f 0
dl 0
loc 27
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A listMessages() 0 20 4
1
<?php
2
declare(strict_types=1);
3
4
5
namespace App\Console;
6
7
/**
8
 * Trait ManageMessages
9
 */
10
trait ManageMessages
11
{
12
13
    /**
14
     * @param string $key
15
     * @param array  $messages
16
     */
17
    protected function listMessages(string $key, array $messages): void
18
    {
19
        $functions = [
20
            'ERROR'   => 'error',
21
            'Warning' => 'warn',
22
            'Message' => 'info',
23
        ];
24
25
        $func = $functions[$key] ?? 'line';
26
27
        if (count($messages) > 0) {
28
            /**
29
             * @var int   $index
30
             * @var array $error
31
             */
32
            foreach ($messages as $index => $list) {
33
                /** @var string $line */
34
                foreach ($list as $line) {
35
36
                    $this->$func(sprintf('%s in line #%d: %s', $key, $index + 1, $line));
37
                }
38
            }
39
        }
40
    }
41
}
42