CakePHP
  • Documentation
    • Book
    • API
    • Videos
    • Logos & Trademarks
  • Business Solutions
  • Swag
  • Road Trip
  • Team
  • Community
    • Community
    • Team
    • Issues (Github)
    • YouTube Channel
    • Get Involved
    • Bakery
    • Featured Resources
    • Newsletter
    • Certification
    • My CakePHP
    • CakeFest
    • Facebook
    • Twitter
    • Help & Support
    • Forum
    • Stack Overflow
    • IRC
    • Slack
    • Paid Support
CakePHP

C CakePHP 3.8 Red Velvet API

  • Overview
  • Tree
  • Deprecated
  • Version:
    • 3.8
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

Namespaces

  • Cake
    • Auth
      • Storage
    • Cache
      • Engine
    • Collection
      • Iterator
    • Command
    • Console
      • Exception
    • Controller
      • Component
      • Exception
    • Core
      • Configure
        • Engine
      • Exception
      • Retry
    • Database
      • Driver
      • Exception
      • Expression
      • Schema
      • Statement
      • Type
    • Datasource
      • Exception
    • Error
      • Middleware
    • Event
      • Decorator
    • Filesystem
    • Form
    • Http
      • Client
        • Adapter
        • Auth
      • Cookie
      • Exception
      • Middleware
      • Session
    • I18n
      • Formatter
      • Middleware
      • Parser
    • Log
      • Engine
    • Mailer
      • Exception
      • Transport
    • Network
      • Exception
    • ORM
      • Association
      • Behavior
        • Translate
      • Exception
      • Locator
      • Rule
    • Routing
      • Exception
      • Filter
      • Middleware
      • Route
    • Shell
      • Helper
      • Task
    • TestSuite
      • Fixture
      • Stub
    • Utility
      • Exception
    • Validation
    • View
      • Exception
      • Form
      • Helper
      • Widget
  • None

Classes

  • Cookie
  • CookieCollection

Interfaces

  • CookieInterface

Class CookieCollection

Cookie Collection

Provides an immutable collection of cookies objects. Adding or removing to a collection returns a new collection that you must retain.

Cake\Http\Cookie\CookieCollection implements IteratorAggregate, Countable
Direct Subclasses
  • Cake\Http\Client\CookieCollection
Namespace: Cake\Http\Cookie
Location: Http/Cookie/CookieCollection.php

Properties summary

  • $cookies protected
    Cake\Http\Cookie\CookieInterface[]
    Cookie objects

Method Summary

  • __construct() public
    Constructor
  • add() public
    Add a cookie and get an updated collection.
  • addFromResponse() public
    Create a new collection that includes cookies from the response.
  • addToRequest() public
    Add cookies that match the path/domain/expiration to the request.
  • checkCookies() protected
    Checks if only valid cookie objects are in the array
  • count() public
    Get the number of cookies in the collection.
  • createFromHeader() public static
    Create a Cookie Collection from an array of Set-Cookie Headers
  • createFromServerRequest() public static
    Create a new collection from the cookies in a ServerRequest
  • findMatchingCookies() protected
    Find cookies matching the scheme, host, and path
  • get() public
    Get the first cookie by name.
  • getIterator() public
    Gets the iterator
  • has() public
    Check if a cookie with the given name exists
  • parseSetCookieHeader() protected static
    Parse Set-Cookie headers into array
  • remove() public
    Create a new collection with all cookies matching $name removed.
  • removeExpiredCookies() protected
    Remove expired cookies from the collection.
  • setRequestDefaults() protected
    Apply path and host to the set of cookies if they are not set.

Method Detail

__construct() public ¶

__construct( array $cookies = [] )

Constructor

Parameters
array $cookies optional []
Array of cookie objects

add() public ¶

add( Cake\Http\Cookie\CookieInterface $cookie )

Add a cookie and get an updated collection.

Cookies are stored by id. This means that there can be duplicate cookies if a cookie collection is used for cookies across multiple domains. This can impact how get(), has() and remove() behave.

Parameters
Cake\Http\Cookie\CookieInterface $cookie
Cookie instance to add.
Returns
Cake\Http\Cookie\CookieCollection

addFromResponse() public ¶

addFromResponse( Psr\Http\Message\ResponseInterface $response , Psr\Http\Message\RequestInterface $request )

Create a new collection that includes cookies from the response.

Parameters
Psr\Http\Message\ResponseInterface $response
Response to extract cookies from.
Psr\Http\Message\RequestInterface $request
Request to get cookie context from.
Returns
Cake\Http\Cookie\CookieCollection

addToRequest() public ¶

addToRequest( Psr\Http\Message\RequestInterface $request , array $extraCookies = [] )

Add cookies that match the path/domain/expiration to the request.

This allows CookieCollections to be used as a 'cookie jar' in an HTTP client situation. Cookies that match the request's domain + path that are not expired when this method is called will be applied to the request.

Parameters
Psr\Http\Message\RequestInterface $request
The request to update.
array $extraCookies optional []

Associative array of additional cookies to add into the request. This is useful when you have cookie data from outside the collection you want to send.

Returns
Psr\Http\Message\RequestInterface
An updated request.

checkCookies() protected ¶

checkCookies( array $cookies )

Checks if only valid cookie objects are in the array

Parameters
array $cookies
Array of cookie objects
Throws
InvalidArgumentException

count() public ¶

count( )

Get the number of cookies in the collection.

Returns
integer
Implementation of
Countable::count()

createFromHeader() public static ¶

createFromHeader( array $header )

Create a Cookie Collection from an array of Set-Cookie Headers

Parameters
array $header
The array of set-cookie header values.
Returns
Cake\Http\Cookie\CookieCollection

createFromServerRequest() public static ¶

createFromServerRequest( Psr\Http\Message\ServerRequestInterface $request )

Create a new collection from the cookies in a ServerRequest

Parameters
Psr\Http\Message\ServerRequestInterface $request
The request to extract cookie data from
Returns
Cake\Http\Cookie\CookieCollection

findMatchingCookies() protected ¶

findMatchingCookies( string $scheme , string $host , string $path )

Find cookies matching the scheme, host, and path

Parameters
string $scheme
The http scheme to match
string $host
The host to match.
string $path
The path to match
Returns
array
An array of cookie name/value pairs

get() public ¶

get( string $name )

Get the first cookie by name.

Parameters
string $name
The name of the cookie.
Returns
Cake\Http\Cookie\CookieInterface|null

getIterator() public ¶

getIterator( )

Gets the iterator

Returns
ArrayIterator
Implementation of
IteratorAggregate::getIterator()

has() public ¶

has( string $name )

Check if a cookie with the given name exists

Parameters
string $name
The cookie name to check.
Returns
boolean
True if the cookie exists, otherwise false.

parseSetCookieHeader() protected static ¶

parseSetCookieHeader( array $values )

Parse Set-Cookie headers into array

Parameters
array $values
List of Set-Cookie Header values.
Returns
Cake\Http\Cookie\Cookie[]
An array of cookie objects

remove() public ¶

remove( string $name )

Create a new collection with all cookies matching $name removed.

If the cookie is not in the collection, this method will do nothing.

Parameters
string $name
The name of the cookie to remove.
Returns
Cake\Http\Cookie\CookieCollection

removeExpiredCookies() protected ¶

removeExpiredCookies( string $host , string $path )

Remove expired cookies from the collection.

Parameters
string $host
The host to check for expired cookies on.
string $path
The path to check for expired cookies on.

setRequestDefaults() protected ¶

setRequestDefaults( array $cookies , string $host , string $path )

Apply path and host to the set of cookies if they are not set.

Parameters
array $cookies
An array of cookies to update.
string $host
The host to set.
string $path
The path to set.
Returns
array
An array of updated cookies.

Properties detail

$cookies ¶

protected Cake\Http\Cookie\CookieInterface[]

Cookie objects

[]
Follow @CakePHP
#IRC
OpenHub
Rackspace
  • Business Solutions
  • Showcase
  • Documentation
  • Book
  • API
  • Videos
  • Logos & Trademarks
  • Community
  • Team
  • Issues (Github)
  • YouTube Channel
  • Get Involved
  • Bakery
  • Featured Resources
  • Newsletter
  • Certification
  • My CakePHP
  • CakeFest
  • Facebook
  • Twitter
  • Help & Support
  • Forum
  • Stack Overflow
  • IRC
  • Slack
  • Paid Support

Generated using CakePHP API Docs