cookie类 php,php cookie类(用到了命名空间)

本文介绍了一个PHP类,用于实现Cookie的基本操作,包括创建、设置过期时间、注销等功能。该类包含属性如cookie名、值、过期时间、路径、域、安全性和HTTP仅限标志,并提供了构造函数、存在性检查、保存和删除的方法。
摘要由CSDN通过智能技术生成

一个php cookie操作类,实现了基本的操作功能:

创建cookie、设置cookie的过期时间、注销cookie等。

代码:

namespace com\net {

/**

* php cookie操作类

* by www.jbxue.com

*/

class Cookie {

/**

* cookie名称

* @var string

*/

public $name;

/**

* cookie值

* @var string

*/

public $value;

/**

* cookie过期时间

* @var int

*/

public $expire;

/**

* cookie 保存路径

* @var string

*/

public $path;

/**

* cookie域

* @var string

*/

public $domain;

/**

* Indicates that the cookie should only be transmitted over a secure HTTPS connection from the client.

* When set to TRUE, the cookie will only be set if a secure connection exists.

* On the server-side, it's on the programmer to send this kind of cookie only on secure connection

* (e.g. with respect to $_SERVER["HTTPS"]).

* @var boolean

*/

public $secure;

/**

* When TRUE the cookie will be made accessible only through the HTTP protocol.

* This means that the cookie won't be accessible by scripting languages, such as JavaScript.

* This setting can effectively help to reduce identity theft through XSS attacks

* (although it is not supported by all browsers).

* Added in PHP 5.2.0. TRUE or FALSE

* @var boolean

*/

public $httponly;

/**

* 创建cookie

*

* @param string $name The name of the cookie.

* @param string $value [optional] The value of the cookie.

* @param int $expire [optional] The time the cookie expires.

* @param string $path [optional] The path on the server in which the cookie will be available on.

* @param string $domain [optional] The domain that the cookie is available to.

* @param boolean $secure [optional] Indicates that the cookie should only be transmitted over a secure HTTPS connection from the client.

* @param boolean $httponly [optional] Indicates that the cookie will be made accessible only through the HTTP protocol

*/

public function __construct($name, $value = null, $expire = null, $path = null, $domain = null, $secure = null, $httponly = null){

if(($this->name = (string) $name)){

if(!is_null($value)){

$this->value = (string) $value;

$this->expire = $expire;

$this->path = $path;

$this->domain = $domain;

$this->secure = $secure;

$this->httponly = $httponly;

} else {

$this->value = $this->exists() ? $_COOKIE[$this->name] : '';

}

} else {

throw new Exception("invalid cookie name");

}

}

/**

* 检测cookie是否存在

* @return boolean

*/

public function exists(){

return isset($_COOKIE[$this->name]);

}

/**

* 通过setcookie设置cookie信息

*/

public function save(){

return setcookie($this->name, $this->value, $this->expire, $this->path, $this->domain, $this->secure, $this->httponly);

}

/**

* 注销cookie

*/

public function delete(){

return setcookie($this->name, "", time() - 3600);

}

}

}

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值