欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

LotusPhp笔记之:Cookie组件的使用详解

程序员文章站 2024-01-31 19:21:34
...
LotusPhp 的 Cookie 组件也是非常简单易用的。

首先,要新建一个配置文件,文件名为 cookie.conf.php,至于放在哪里等到讲到 Config 组件的时候会有一个阐述,今天先说怎么用,需要哪些步骤。

Cookie 配置文件的主要内容就是定义 Cookie 的加密密匙,程序里自动对 Cookie 内容进行加密,当然这样有一个弊端,就是客户端无法直接读取和操作,只能服务器来操作。如果你要直接用 js 在客户端操作 Cookie ,那最好还是不要用 LotusPhp 的 Cookie 组件。

密匙可以是任意字符,配置文件内容如下:

复制代码 代码如下:


$config['cookie.secret_key'] = 'sdfs445e22$$$@%T';


组件的使用方法如下:

复制代码 代码如下:


// 单例模式声明 Cookie 对象
$cookie = LtObjectUtil::singleton('LtCookie');

// 或者用常规方式声明 Cookie 对象
// $cookie = new LtCookie();
// $cookie->init();

/*
* 写入 Cookie ,设置 Cookie 的方法其实和 php 内置的setcookie 是一样一样的
* $name Cookie 名称,必填项
* $value Cookie 值,可以是字符串可以是数组
* $expire 过期时间,是一个标准的Unix时间标记,可以用time()或mktime()函数取得,以秒为单位,选填
* $path Cookie 路径,选填
* $domain Cookie 域名,选填,如果多个二级域名之间共享 Cookie ,就设置为根域名即可
* $secure 参数表示这个Cookie是否通过加密的 HTTPS 协议在网络上传输,默认值为0,就是代表不是使用 HTTPS 协议,如果是的话改成1
* 方法: $cookie->setCookie($name, $value = '', $expire = null, $path = '/', $domain = null, $secure = 0);

* 范例 :userName 值为 '我是帅哥' ,有效期为一个小时,路径为根目录,域名为 myDomain.com ,不在 HTTPS 下传输
* $cookie->setCookie('userName', '我是帅哥', time()+3600, '/', 'myDomain.com', 0);
*/
$cookie->setCookie('userName', '我是帅哥');

/*
* 读取 Cookie
* $name Cookie 名称,必填项
* 方法: $cookie->getCookie($name);
* 如果 Cookie 值存在会返回值,不存在返回null
*/
$cookie->getCookie('userName');

/*
* 删除 Cookie
* $name Cookie 名称,必填项
* $path Cookie 路径,选填
* $domain Cookie 域名,选填,如果多个二级域名之间共享 Cookie ,就设置为根域名即可
* 方法: $cookie->delCookie($name, $path = '/', $domain = null)
*/
$cookie->delCookie('userName');


最后,附上php 操作 Cookie 的文章,大家可以对照下,其实 LotusPhp 设置 Cookie 和 Php 设置 Cookie 是一样的

在PHP中设置、使用、删除Cookie的解决方法