Class yii\web\CookieCollection

继承yii\web\CookieCollection » yii\base\BaseObject
实现ArrayAccess, Countable, IteratorAggregate, yii\base\Configurable
可用自版本2.0
源代码 https://github.com/yiisoft/yii2/blob/master/framework/web/CookieCollection.php

CookieCollection 维护当前请求中可用的 Cookie.

有关 CookieCollection 的更多详细信息和使用信息, 请参阅 权威指南 - 请求处理 - Sessions and Cookies.

公共属性

隐藏继承的属性

属性类型描述定义在
$count integer 集合中 cookie 的数量. 该属性是只读的. yii\web\CookieCollection
$iterator ArrayIterator 一个遍历集合中的 cookie 的迭代器. 该属性是只读的. yii\web\CookieCollection
$readOnly boolean 此集合是否是只读的. yii\web\CookieCollection

公共方法

隐藏继承的方法

方法描述定义在
__call() 调用不是类方法的已命名方法. yii\base\BaseObject
__construct() 构造函数. yii\web\CookieCollection
__get() 返回对象属性的值. yii\base\BaseObject
__isset() 检查属性是否已设置, 即已定义且不为null. yii\base\BaseObject
__set() 设置对象属性的值. yii\base\BaseObject
__unset() 将对象属性设置为null. yii\base\BaseObject
add() 将 cookie 添加到集合中. yii\web\CookieCollection
canGetProperty() 返回一个值, 指示属性是否可读. yii\base\BaseObject
canSetProperty() 返回一个值, 指示属性是否可写. yii\base\BaseObject
className() 返回此类的完全限定名称. yii\base\BaseObject
count() 返回集合中 cookie 的数量. yii\web\CookieCollection
fromArray() 从数组中填充 cookie 集合. yii\web\CookieCollection
get() 返回具有指定名称的 cookie. yii\web\CookieCollection
getCount() 返回集合中 cookie 的数量. yii\web\CookieCollection
getIterator() 返回用于遍历集合中的 cookie 的迭代器. yii\web\CookieCollection
getValue() 返回指定 cookie 的值. yii\web\CookieCollection
has() 返回是否存在具有指定名称的 cookie. yii\web\CookieCollection
hasMethod() 返回一个值, 指示方法是否已定义. yii\base\BaseObject
hasProperty() 返回一个值, 指示属性是否已定义. yii\base\BaseObject
init() 初始化对象. yii\base\BaseObject
offsetExists() 返回是否存在具有指定名称的 cookie. yii\web\CookieCollection
offsetGet() 返回具有指定名称的 cookie. yii\web\CookieCollection
offsetSet() 将 cookie 添加到集合中. yii\web\CookieCollection
offsetUnset() 删除指定的 cookie. yii\web\CookieCollection
remove() 删除一个 cookie. yii\web\CookieCollection
removeAll() 删除所有的 Cookie. yii\web\CookieCollection
toArray() 将集合作为 PHP 数组返回. yii\web\CookieCollection

属性详情

$count public 属性

集合中 cookie 的数量. 该属性是只读的.

public integer $count null
$iterator public 属性

一个遍历集合中的 cookie 的迭代器. 该属性是只读的.

public ArrayIterator $iterator null
$readOnly public 属性

此集合是否是只读的.

public boolean $readOnly false

方法详情

__construct() public 方法

构造函数.

public void __construct ( $cookies = [], $config = [] )
$cookies array

此集合最初包含的 cookies. 这应该是一个 name-value 对的数组.

$config array

将用于初始化对象属性的 name-value 对.

add() public 方法

将 cookie 添加到集合中.

如果集合中已经有一个同名的 cookie, 它将被首先删除.

public void add ( $cookie )
$cookie yii\web\Cookie

要添加的 cookie.

throws yii\base\InvalidCallException

如果 cookie 集合是只读的.

count() public 方法

返回集合中 cookie 的数量.

SPL Countable接口需要此方法. 当你使用count($collection)时, 它会被隐式调用.

public integer count ( )
return integer

集合中 cookie 的数量.

fromArray() public 方法 (可用自版本: 2.0.3)

从数组中填充 cookie 集合.

public void fromArray ( array $array )
$array array

要填充的 cookie.

get() public 方法

返回具有指定名称的 cookie.

参见 getValue().

public yii\web\Cookie get ( $name )
$name string

Cookie 名称.

return yii\web\Cookie

具有指定名称的 cookie. 如果指定的 cookie 不存在, 则为null.

getCount() public 方法

返回集合中 cookie 的数量.

public integer getCount ( )
return integer

集合中 cookie 的数量.

getIterator() public 方法

返回用于遍历集合中的 cookie 的迭代器.

SPL接口 IteratorAggregate 需要此方法. 当你使用foreach来遍历集合时, 它会被隐式调用.

public ArrayIterator getIterator ( )
return ArrayIterator

一个遍历集合中的 cookie 的迭代器.

getValue() public 方法

返回指定 cookie 的值.

参见 get().

public mixed getValue ( $name, $defaultValue null )
$name string

Cookie 名称.

$defaultValue mixed

当指定的 cookie 不存在时应返回的默认值.

return mixed

指定 cookie 的值.

has() public 方法

返回是否存在具有指定名称的 cookie.

Note: 如果将 cookie 标记为从浏览器删除, 则此方法将返回false.

参见 remove().

public boolean has ( $name )
$name string

Cookie 名称.

return boolean

是否存在指定的 cookie.

offsetExists() public 方法

返回是否存在具有指定名称的 cookie.

SPL 接口 ArrayAccess 需要此方法. 当你使用诸如isset($collection[$name])的时候, 它被隐式调用.

public boolean offsetExists ( $name )
$name string

Cookie 名称.

return boolean

是否存在指定的 cookie.

offsetGet() public 方法

返回具有指定名称的 cookie.

SPL 接口 ArrayAccess 需要此方法. 当你使用诸如$cookie = $collection[$name];的时候, 它被隐式调用. 这相当于 get().

public yii\web\Cookie offsetGet ( $name )
$name string

Cookie 名称.

return yii\web\Cookie

具有指定名称的 cookie, 如果指定的 cookie 不存在, 则返回null.

offsetSet() public 方法

将 cookie 添加到集合中.

SPL 接口 ArrayAccess 需要此方法. 当你使用诸如$collection[$name] = $cookie;的时候, 它被隐式调用. 这相当于 add().

public void offsetSet ( $name, $cookie )
$name string

Cookie 名称.

$cookie yii\web\Cookie

要添加的 cookie.

offsetUnset() public 方法

删除指定的 cookie.

SPL 接口 ArrayAccess 需要此方法. 当你使用诸如unset($collection[$name])的时候, 它被隐式调用. 这相当于 remove().

public void offsetUnset ( $name )
$name string

Cookie 名称.

remove() public 方法

删除一个 cookie.

如果$removeFromBrowsertrue, 则 cookie 将从浏览器中删除. 在这种情况下, 过期的 cookie 将被添加到集合中.

public void remove ( $cookie, $removeFromBrowser true )
$cookie yii\web\Cookie|string

Cookie 对象或要删除的 cookie 的名称.

$removeFromBrowser boolean

是否从浏览器中删除 cookie.

throws yii\base\InvalidCallException

如果 cookie 集合是只读的.

removeAll() public 方法

删除所有的 Cookie.

public void removeAll ( )
throws yii\base\InvalidCallException

如果 cookie 集合是只读的.

toArray() public 方法

将集合作为 PHP 数组返回.

public array toArray ( )
return array

集合的数组表示形式. 数组键是 cookie 名称, 数组值是相应的 cookie 对象.