1: <?php
2: 3: 4: 5: 6: 7:
8: namespace Core\Cookie;
9: use Core\System\System;
10: class Cookie
11: {
12:
13: private function __construct()
14: {
15:
16: }
17:
18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28:
29: public static function set($cookieName, $cookieValue=null, $expiryDays=365, $path=null, $domain=null, $secure=null, $httpOnly=null)
30: {
31: return setcookie($cookieName, $cookieValue, time()+(86400 * $expiryDays), $path, $domain, $secure, $httpOnly);
32: }
33:
34: 35: 36: 37: 38:
39: public static function get($cookieName = null)
40: {
41: if($cookieName == null)
42: {
43: return $_COOKIE;
44: }
45: if(isset($_COOKIE[$cookieName]))
46: {
47: return $_COOKIE[$cookieName];
48: }
49: return null;
50: }
51:
52: 53: 54: 55: 56:
57: public static function has($cookieName)
58: {
59: return isset($_COOKIE[$cookieName]);
60: }
61:
62: 63: 64: 65: 66:
67: public static function delete($cookieName = null)
68: {
69: if($cookieName == null)
70: {
71: if (isset($_SERVER['HTTP_COOKIE']))
72: {
73: $cookies = explode(';', $_SERVER['HTTP_COOKIE']);
74: foreach($cookies as $cookie)
75: {
76: $parts = explode('=', $cookie);
77: $name = trim($parts[0]);
78: setcookie($name, '', time()-1000);
79: setcookie($name, '', time()-1000, '/');
80: }
81: }
82: return true;
83: }
84: return setcookie($cookieName, "", time() - 1000);
85: }
86: }