StringUtil   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 21
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 71.43%

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 0
dl 0
loc 21
rs 10
c 0
b 0
f 0
ccs 5
cts 7
cp 0.7143

2 Methods

Rating   Name   Duplication   Size   Complexity  
A splitOnAttributeDelimiter() 0 8 1
A splitCookiePair() 0 7 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Dflydev\FigCookies;
6
7 51
use function array_filter;
8
use function assert;
9 51
use function explode;
10
use function is_array;
11
use function preg_split;
12 51
use function urldecode;
13
14 51
class StringUtil
15
{
16 51
    /** @return string[] */
17
    public static function splitOnAttributeDelimiter(string $string) : array
18
    {
19
        $splitAttributes = preg_split('@\s*[;]\s*@', $string);
20 51
21 51
        assert(is_array($splitAttributes));
22 51
23
        return array_filter($splitAttributes);
24
    }
25
26
    /** @return string[] */
27
    public static function splitCookiePair(string $string) : array
28
    {
29
        $pairParts    = explode('=', $string, 2);
30
        $pairParts[1] = urldecode($pairParts[1] ?? '');
31
32
        return $pairParts;
33
    }
34
}
35