您的位置:首页 > 编程语言 > PHP开发

Thinkphp5学习(30)session,cookie机制

2017-07-14 21:17 645 查看
学习内容:

https://www.kancloud.cn/tpshop/thinkphp5/231105

完全开发手册:

https://www.kancloud.cn/manual/thinkphp5/126166

session的保存路径:

查看php.ini ,session.save_path=””

















session_start();

关闭浏览器后,session失效。

==

在thinkphp5中session 的使用。

配置

application/config.php

// 赋值(当前作用域)
Session::set('name','thinkphp');
// 赋值think作用域
Session::set('name','thinkphp2','think2');
// 判断(当前作用域)是否赋值
echo Session::has('name');
//  判断think作用域下面是否赋值
echo Session::has('name','think2');
// 指定当前作用域
Session::prefix('think2');
// 删除当前作用域
Session::delete('name','think');
// 清除session当前作用域
Session::clear();
// 清除think2作用域
Session::clear('think2');
// 赋值(当前作用域)
Session::set('name.item','thinkphp');
// 取值(当前作用域)
Session::get('name.item');
// 删除(当前作用域)
Session::delete('name.item');
$_SESSION=[];


助手函数

public function test38(){
session('name','thinkphp');
$this->request->session('name');
session('name',null);
session(null);
session(null,'think');
}


public function test39(){
session('user_name','thinphp开发团队');
$this->fetch();
}


模板输出:

{$Request.session.user_name}

session配置里,type

// 驱动方式 支持redis,memcache,memcached,

原始时,是存在文件里。

可以配置存在redis.

==

cookie的使用。

配置。

cookie的使用:

public function test43(){
Cookie::set('name','Tpshop团队',3600);
//  设置cookie 前缀为think_
Cookie::set('user_name','TPshop 老师',['prefix'=>'think_','expire'=>3600]);
// 支持数组
Cookie::set('Teacher',['zhang','wang','chen','peng']);
var_dump(Cookie::get('user_name','think_')) ;
echo '<br/>';
// 建议 读取cookie数据的方法是能通过Request请求对象的cookie的方法
echo $this->request->cookie('think_user_name');

// 删除cookie
Cookie::delete('user_name');

// 删除指定前缀的cookie
Cookie::delete('user_name','think_');

// 清空指定前缀的cookie
Cookie::clear('think_');

// 助手函数
// 初始化
cookie(['prefix'=>'think_','expire'=>3600]);
// 设置
cookie('name','value123',3600);
// 判断
echo cookie('?name');
// 获取
echo cookie('name');
// 删除
cookie('name',null);
// 清除
cookie(null,'think_');

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: