enjoys / cookie
Cookie 管理器
2.0.1
2023-01-29 11:27 UTC
Requires
- php: >= 8.0
- psr/http-message: ^1.0
Requires (Dev)
- httpsoft/http-server-request: ^1.0
- infection/infection: ^0.26.18
- phpunit/phpunit: ^9.5
- symfony/var-dumper: ^v5.3
- vimeo/psalm: ^5.6
README
示例
在 Options 中设置全局参数。在安装 cookie 时,可以针对特定情况更改这些设置。
use Enjoys\Cookie\Options; /** @var \Psr\Http\Message\ServerRequestInterface $request */ $cookieOptions = new Options($request); $cookieOptions->setDomain('example.com'); //default: false (localhost) $cookieOptions->setPath('/'); //default: '' (string empty) $cookieOptions->setSecure(true); //default: false $cookieOptions->setHttponly(true); //default: false $cookieOptions->setSameSite('Strict'); //default: Lax
use Enjoys\Cookie\Cookie; use Enjoys\Cookie\Options; /** @var Options $cookieOptions */ $cookie = new Cookie($cookieOptions); $cookie->set('key', 'value<>', $ttl = true, $options = []); $cookie->setRaw('key', 'value<>'); $cookie->delete('key'); $cookie->get('key'); $cookie->has('key');
TTL(Time to live,生存时间)
默认 true - cookie 的有效期将在会话结束时结束(当浏览器关闭时)
也可以接受其他值
(int) 0
(bool) true
(string) 'session'
- cookie 的有效期将在会话结束时结束(当浏览器关闭时)(bool) false
- 不会设置 cookie,或者如果之前已经设置,则会删除int|float (除了 0)
- 除了 0 之外的正数或负数,将加上当前日期的秒数。如果是负数,则不会设置 cookie,或者如果之前已经设置,则会删除DateTime|DateTimeImmutable
- 将设置对象中指定的日期。string
- 允许 strtotime()、DateTime 和 date_create() 函数解析的相对日期/时间格式,例如 ‘+1 week’。所有都是相对于当前日期的。