电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Laravel操作session和cookie的教程詳解

瀏覽:150日期:2022-06-06 17:19:12
目錄
  • 一:操作session
    • 1:session配置
    • 2:設(shè)置session
    • 3:獲取session
    • 4:刪除session
    • 5:重新生成 Session ID
  • 二:操作cookie
    • 1:設(shè)置cookie
    • 2:獲取cookie
    • 3:刪除cookie

一:操作session

1:session配置

Session 的配置文件存儲在config/session.php中,配置參數(shù)有:

(1):配置session驅(qū)動

"driver" => env("SESSION_DRIVER", "file"),//#這里表示先讀取.env文件的SESSION_DRIVER參數(shù)值,如果沒有使用file驅(qū)動

laravel自帶的驅(qū)動

  • file - 將 Session 保存在 指定文件地址 中。
  • cookie - Session 保存在安全加密的 Cookie 中。
  • database - Session 保存在關(guān)系型數(shù)據(jù)庫中。
  • memcached / redis - Sessions 保存在其中一個快速且基于緩存的存儲系統(tǒng)中。
  • array - Sessions 保存在 PHP 數(shù)組中,不會被持久化。

(2):配置失效時間

"lifetime" => env("SESSION_LIFETIME", 120),

(3):使用file驅(qū)動時session文件保存地址

"files" => storage_path("framework/sessions"),

(4):使用redis驅(qū)動時指定 Session 使用哪個 Redis 連接

"connection" => null,//不修改使用默認(rèn)的redis

(5):使用database驅(qū)動時將session數(shù)據(jù)存入的數(shù)據(jù)庫名

"table" => "sessions",

使用database驅(qū)動時,在目錄命令行執(zhí)行

php artisan session:table

這時候會在database/migrations目錄下生成一個創(chuàng)建session數(shù)據(jù)表的文件

/**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
Schema::create("sessions", function (Blueprint $table) {
    $table->string("id")->unique();
    $table->unsignedBigInteger("user_id")->nullable();
    $table->string("ip_address", 45)->nullable();
    $table->text("user_agent")->nullable();
    $table->text("payload");
    $table->integer("last_activity");
});
    }
 
    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
Schema::dropIfExists("sessions");
    }

然后執(zhí)行

php artisan migrate

這時候會在數(shù)據(jù)庫中生成一個sessions表,這個表就是保存session數(shù)據(jù)的表

2:設(shè)置session

(1):使用Request實例設(shè)置session

$request->session()->put("key", "value");//設(shè)置session
$request->session()->push("arr","item");//session數(shù)組數(shù)據(jù)中追加數(shù)據(jù)

(2):使用全局輔助函數(shù)session設(shè)置

session(["key" => "value"]);//設(shè)置session
session()->push("arr","item");//session數(shù)組數(shù)據(jù)中追加數(shù)據(jù)

3:獲取session

(1):使用Request實例獲取session

$data = $request->session()->all();//獲取所有session
$value = $request->session()->get("key");//獲取指定session

獲取指定session,不存在設(shè)置默認(rèn)值

$value = $request->session()->get("key", "default");
$value = $request->session()->get("key", function () {
    return "default";
});
//確定 Session 中是否存在某個值,該值存在且不為 null,那么 has 方法會返回 true
if ($request->session()->has("key")) {
    //
}
//確定 Session 中是否存在某個值,即使其值為 null,返回 true
if ($request->session()->exists("key")) {
    //
}

(2):使用全局輔助函數(shù)session獲取

$value = session("key");
$value = session("key", "default");
$value = session()->get("key")
$value = session()->get("key","default")
session()->has("key");
session()->exists("key");

4:刪除session

(1):使用Request實例刪除session

//獲取到session數(shù)據(jù)然后刪除session
$value = $request->session()->pull("key", "default");
//刪除指定session
$request->session()->forget("key");
//刪除所有session
$request->session()->flush();

(2):使用全局輔助函數(shù)session刪除

//刪除指定session
session()->forget("name");
//清空所有session
session()->flush();

5:重新生成 Session ID

(1):使用Request實例重新生成 Session ID

$request->session()->regenerate();

(2):使用全局輔助函數(shù)session重新生成 Session ID

session()->regenerate();

二:操作cookie

1:設(shè)置cookie

Cookie::queue("test", "testValue", 10);//設(shè)置cookie,test值為testValue,設(shè)置cookie時長10分鐘
Cookie::make("cookie_name", "value", 10);//設(shè)置cookie,cookie_name值為value,設(shè)置cookie時長10分鐘
Cookie::forever("key","value");//設(shè)置cookie,key值為value,永不過期

注意:如果使用Cookie::make()或Cookie::forever()方法設(shè)置cookie的話,渲染視圖時不能直接使用:

return \response()->view("index",$data)->withCookie($cookie);

2:獲取cookie

Cookie::get("key");

3:刪除cookie

Cookie::forget("key");

到此這篇關(guān)于Laravel操作session和cookie的教程詳解的文章就介紹到這了,更多相關(guān)Laravel操作session cookie內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: PHP
主站蜘蛛池模板: 钢格板|镀锌钢格板|热镀锌钢格板|格栅板|钢格板|钢格栅板|热浸锌钢格板|平台钢格板|镀锌钢格栅板|热镀锌钢格栅板|平台钢格栅板|不锈钢钢格栅板 - 专业钢格板厂家 | 岩棉板|岩棉复合板|聚氨酯夹芯板|岩棉夹芯板|彩钢夹芯板-江苏恒海钢结构 | 北京公司注册_代理记账_代办商标注册工商执照-企力宝 | 高精度电阻回路测试仪-回路直流电阻测试仪-武汉特高压电力科技有限公司 | 广东护栏厂家-广州护栏网厂家-广东省安麦斯交通设施有限公司 | LZ-373测厚仪-华瑞VOC气体检测仪-个人有毒气体检测仪-厂家-深圳市深博瑞仪器仪表有限公司 | 硅胶制品-硅橡胶制品-东莞硅胶制品厂家-广东帝博科技有限公司 | 鹤壁创新仪器公司-全自动量热仪,定硫仪,煤炭测硫仪,灰熔点测定仪,快速自动测氢仪,工业分析仪,煤质化验仪器 | 胶水,胶粘剂,AB胶,环氧胶,UV胶水,高温胶,快干胶,密封胶,结构胶,电子胶,厌氧胶,高温胶水,电子胶水-东莞聚力-聚厉胶粘 | 杭州公司变更法人-代理记账收费价格-公司注销代办_杭州福道财务管理咨询有限公司 | 房车价格_依维柯/大通/东风御风/福特全顺/江铃图片_云梯搬家车厂家-程力专用汽车股份有限公司 | 农业四情_农业气象站_田间小型气象站_智慧农业气象站-山东风途物联网 | 不锈钢轴流风机,不锈钢电机-许昌光维防爆电机有限公司(原许昌光维特种电机技术有限公司) | 丹佛斯压力传感器,WISE温度传感器,WISE压力开关,丹佛斯温度开关-上海力笙工业设备有限公司 | 四川实木门_成都实木门 - 蓬溪聚成门业有限公司| 河南新乡德诚生产厂家主营震动筛,振动筛设备,筛机,塑料震动筛选机 | 中医中药治疗血小板减少-石家庄血液病肿瘤门诊部 | 电解抛光加工_不锈钢电解抛光_常州安谱金属制品有限公司 | ★塑料拖链__工程拖链__电缆拖链__钢制拖链 - 【上海闵彬】 | 原子吸收设备-国产分光光度计-光谱分光光度计-上海光谱仪器有限公司 | 成都办公室装修-办公室设计-写字楼装修设计-厂房装修-四川和信建筑装饰工程有限公司 | 浙江建筑资质代办_二级房建_市政_电力_安许_劳务资质办理公司 | led太阳能路灯厂家价格_风光互补庭院灯_农村市政工程路灯-中山华可路灯品牌 | 建筑资质代办-建筑企业资质代办机构-建筑资质代办公司 | 组织研磨机-高通量组织研磨仪-实验室多样品组织研磨机-东方天净 传递窗_超净|洁净工作台_高效过滤器-传递窗厂家广州梓净公司 | 工作心得_读书心得_学习心得_找心得体会范文就上学道文库 | 双工位钻铣攻牙机-转换工作台钻攻中心-钻铣攻牙机一体机-浙江利硕自动化设备有限公司 | 粘度计,数显粘度计,指针旋转粘度计 | 上海噪音治理公司-专业隔音降噪公司-中广通环保 | 贴板式电磁阀-不锈钢-气动上展式放料阀-上海弗雷西阀门有限公司 工业机械三维动画制作 环保设备原理三维演示动画 自动化装配产线三维动画制作公司-南京燃动数字 | 液压油缸-液压缸厂家价格,液压站系统-山东国立液压制造有限公司 液压油缸生产厂家-山东液压站-济南捷兴液压机电设备有限公司 | 安全,主动,被动,柔性,山体滑坡,sns,钢丝绳,边坡,防护网,护栏网,围栏,栏杆,栅栏,厂家 - 护栏网防护网生产厂家 | 大连海岛旅游网>>大连旅游,大连海岛游,旅游景点攻略,海岛旅游官网 | 单锥双螺旋混合机_双螺旋锥形混合机-无锡新洋设备科技有限公司 | 考勤系统_考勤管理系统_网络考勤软件_政企|集团|工厂复杂考勤工时统计排班管理系统_天时考勤 | 纯水电导率测定仪-万用气体检测仪-低钠测定仪-米沃奇科技(北京)有限公司www.milwaukeeinst.cn 锂辉石检测仪器,水泥成分快速分析仪-湘潭宇科分析仪器有限公司 手术室净化装修-手术室净化工程公司-华锐手术室净化厂家 | 知名电动蝶阀,电动球阀,气动蝶阀,气动球阀生产厂家|价格透明-【固菲阀门官网】 | 北京三友信电子科技有限公司-ETC高速自动栏杆机|ETC机柜|激光车辆轮廓测量仪|嵌入式车道控制器 | pH污水传感器电极,溶解氧电极传感器-上海科蓝仪表科技有限公司 | 沈阳真空机_沈阳真空包装机_沈阳大米真空包装机-沈阳海鹞真空包装机械有限公司 | 三板富 | 专注于新三板的第一垂直服务平台|