Passed
Push — master ( 78312e...d7519e )
by Radu
01:19
created

Cookie::set()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 17
Code Lines 8

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 17
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 8
nc 1
nop 7
1
<?php
2
namespace WebServCo\Framework\Libraries;
3
4
use WebServCo\Framework\RequestUtils as Utils;
5
6
final class Cookie extends \WebServCo\Framework\AbstractLibrary
7
{
8
    public function set(
9
        $name,
10
        $value = '',
11
        $expire = 0,
12
        $path = '',
13
        $domain = '',
14
        $secure = false,
15
        $httponly = false
16
    ) {
17
        return setcookie(
18
            $name,
19
            Utils::sanitizeString($value),
20
            $expire,
21
            $path,
22
            $domain,
23
            $secure,
24
            $httponly
25
        );
26
    }
27
    
28
    public function get($name, $defaultValue = false)
29
    {
30
        return isset($_COOKIE[$name]) ? $_COOKIE[$name] : $defaultValue;
31
    }
32
    
33
    public function remove($name)
34
    {
35
        if (!isset($_COOKIE[$name])) {
36
            return false;
37
        }
38
        
39
        unset($_COOKIE[$name]);
40
        $this->set($name, false, -1);
41
        return true;
42
    }
43
}
44