本文整理汇总了PHP中Symfony\Component\HttpFoundation\ResponseHeaderBag::setCookie方法的典型用法代码示例。如果您正苦于以下问题:PHP ResponseHeaderBag::setCookie方法的具体用法?PHP ResponseHeaderBag::setCookie怎么用?PHP ResponseHeaderBag::setCookie使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Symfony\Component\HttpFoundation\ResponseHeaderBag
的用法示例。
在下文中一共展示了ResponseHeaderBag::setCookie方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testRemoveCookie
public function testRemoveCookie()
{
$bag = new ResponseHeaderBag();
$bag->setCookie(new Cookie('foo', 'bar', 0, '/path/foo', 'foo.bar'));
$bag->setCookie(new Cookie('bar', 'foo', 0, '/path/bar', 'foo.bar'));
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertTrue(isset($cookies['foo.bar']['/path/foo']));
$bag->removeCookie('foo', '/path/foo', 'foo.bar');
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertFalse(isset($cookies['foo.bar']['/path/foo']));
$bag->removeCookie('bar', '/path/bar', 'foo.bar');
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertFalse(isset($cookies['foo.bar']));
}
示例2: testToStringIncludesCookieHeaders
public function testToStringIncludesCookieHeaders()
{
$bag = new ResponseHeaderBag(array());
$bag->setCookie(new Cookie('foo', 'bar'));
$this->assertContains("Set-Cookie: foo=bar; path=/; httponly", explode("\r\n", $bag->__toString()));
$bag->clearCookie('foo');
$this->assertContains("Set-Cookie: foo=deleted; expires=" . gmdate("D, d-M-Y H:i:s T", time() - 31536001) . "; httponly", explode("\r\n", $bag->__toString()));
}
示例3: it_sets_cookie_when_it_does
public function it_sets_cookie_when_it_does(FilterResponseEvent $event, Response $response, ResponseHeaderBag $headers)
{
$headers->setCookie(Argument::type('Symfony\\Component\\HttpFoundation\\Cookie'));
$response->headers = $headers;
$event->getRequestType()->willReturn(HttpKernelInterface::MASTER_REQUEST)->shouldBeCalled();
$event->getRequest()->willReturn($this->secureRequest)->shouldBeCalled();
$event->getResponse()->willReturn($response)->shouldBeCalled();
$this->onKernelResponse($event);
}
示例4: Cookie
function it_should_encrypt_a_cookie(Request $request, FilterResponseEvent $event, ResponseHeaderBag $headers, Response $response)
{
$currentCookie = new Cookie('session', 'test', 3600, '/account', 'example.com', true, false);
$newCookie = new Cookie('session', 'dGVzdA==', 3600, '/account', 'example.com', true, false);
$headers->getCookies()->willReturn([$currentCookie]);
$headers->removeCookie("session", "/account", "example.com")->shouldBeCalled();
$headers->setCookie($newCookie, "/account", "example.com")->shouldBeCalled();
$response->headers = $headers;
$event->getRequest()->willReturn($request);
$event->getRequestType()->willReturn(HttpKernelInterface::MASTER_REQUEST);
$event->getResponse()->willReturn($response);
$this->onKernelResponse($event)->shouldReturn(null);
}
示例5:
function it_persists_fake_channel_codes_in_a_cookie(FakeChannelCodeProviderInterface $fakeHostnameProvider, FilterResponseEvent $filterResponseEvent, Request $request, Response $response, ResponseHeaderBag $responseHeaderBag)
{
$filterResponseEvent->getRequestType()->willReturn(HttpKernelInterface::MASTER_REQUEST);
$filterResponseEvent->getRequest()->willReturn($request);
$fakeHostnameProvider->getCode($request)->willReturn('fake_channel_code');
$filterResponseEvent->getResponse()->willReturn($response);
$response->headers = $responseHeaderBag;
$responseHeaderBag->setCookie(Argument::that(function (Cookie $cookie) {
if ($cookie->getName() !== '_channel_code') {
return false;
}
if ($cookie->getValue() !== 'fake_channel_code') {
return false;
}
return true;
}))->shouldBeCalled();
$this->onKernelResponse($filterResponseEvent);
}
示例6: testRemoveCookieWithNullRemove
public function testRemoveCookieWithNullRemove()
{
$bag = new ResponseHeaderBag();
$bag->setCookie(new Cookie('foo', 'bar', 0));
$bag->setCookie(new Cookie('bar', 'foo', 0));
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertTrue(isset($cookies['']['/']));
$bag->removeCookie('foo', null);
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertFalse(isset($cookies['']['/']['foo']));
$bag->removeCookie('bar', null);
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertFalse(isset($cookies['']['/']['bar']));
}
示例7:
function it_listens_cookie_event(CookieEvent $cookieEvent, Response $response, ResponseHeaderBag $responseHeaderBag, SessionInterface $session)
{
$cookieEvent->getSession()->shouldBeCalled()->willReturn($session);
$session->has('access_token')->shouldBeCalled()->willReturn(true);
$session->has('refresh_token')->shouldBeCalled()->willReturn(true);
$cookieEvent->getResponse()->shouldBeCalled()->willReturn($response);
$session->get('access_token')->shouldBeCalled()->willReturn('accesstoken');
$session->get('refresh_token')->shouldBeCalled()->willReturn('refreshtoken');
$responseHeaderBag->setCookie(Argument::type('Symfony\\Component\\HttpFoundation\\Cookie'))->shouldBeCalled();
$responseHeaderBag->setCookie(Argument::type('Symfony\\Component\\HttpFoundation\\Cookie'))->shouldBeCalled();
$response->headers = $responseHeaderBag;
$this->onCookieEvent($cookieEvent);
}