diff --git a/src/Cookies.php b/src/Cookies.php index 0eb5422..db8174f 100644 --- a/src/Cookies.php +++ b/src/Cookies.php @@ -12,6 +12,7 @@ use InvalidArgumentException; +use function array_key_exists; use function array_replace; use function count; use function explode; @@ -89,7 +90,7 @@ public function setDefaults(array $settings): self */ public function get(string $name, $default = null) { - return isset($this->requestCookies[$name]) ? $this->requestCookies[$name] : $default; + return array_key_exists($name, $this->requestCookies) ? $this->requestCookies[$name] : $default; } /** diff --git a/tests/CookiesTest.php b/tests/CookiesTest.php index 1e0c2f6..0c1d84a 100644 --- a/tests/CookiesTest.php +++ b/tests/CookiesTest.php @@ -189,8 +189,9 @@ public function testSetSameSiteCookieValuesAreCaseInsensitive() public function testGet() { - $cookies = new Cookies(['foo' => 'bar']); + $cookies = new Cookies(['foo' => 'bar', 'baz' => null]); $this->assertEquals('bar', $cookies->get('foo')); + $this->assertNull($cookies->get('baz', 'defaultValue')); $this->assertNull($cookies->get('missing')); $this->assertEquals('defaultValue', $cookies->get('missing', 'defaultValue')); }