StringUtil::splitOnAttributeDelimiter()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 8

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1.064

Importance

Changes 0
Metric Value
dl 0
loc 8
rs 10
c 0
b 0
f 0
ccs 3
cts 5
cp 0.6
cc 1
nc 1
nop 1
crap 1.064
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