1-2Controller之Session
laravel5.5版本。
视频教程是慕课网中的:轻松学会Laravel-表单篇 1-2
/*session简介:
1.由于HTTP协议是无状态(Stateless)的,所以session提供一种保存用户数据的方法
2.Laravel支持了多种session后端驱动,并提供清楚、统一的API。也内置支持如Memcached/Redis和数据库的后端驱动。
默认使用"file"的Session驱动
3.session的配置文件配置在config/session.php中
* */ /*Laravel中使用session有三种方式:
* HTTP request类的session()方法。
* session()辅助函数
* session facade
* */
路由:
Route::group(['middleware'=>['web']],function (){
Route::any('session1',['uses'=>'StudentController@session1']);
Route::any('session2',['uses'=>'StudentController@session2']);
});
控制器中的方法:
public function session1(Request $request){
//1.HTTP request session();
//把session存储起来
//$request::session()->put('key1','value1');
//取出第一步存储的session的值:
//echo $request::session()->get('key1');
//2.session()的辅助函数:
//存储session的值:
//session()->put('key2','value2');
//取出session的值:
//echo session()->get('key2');
//3.Session的类:
//存储session的值:
//Session::put('key3','value3');
//取出session的值:
//echo Session::get('key3');
//如果session不存在,取默认值:
//echo Session::get('key4','default');
//以数组的形式存储数据:
//存储session的值:
//Session::put(['key5'=>'value5']);
//取出session的值:
//echo Session::get('key5');
//把数据放到Session的数组中:
/*Session::push('student','sean');
Session::push('student','imooc');*/
//取出session数组中的内容:
/*$res=Session::get('student','default');
var_dump($res);*/
//pull: 取出数据一次之后,就删除数据了。第一次正常取出,第二次只能获得默认值
/*$res=Session::pull('student','default');
var_dump($res);*/
//取出所有的值:
/*$res=Session::all();
dd($res);*/
//判断session中某个值是否存在:
/*if (Session::has('key11')){
$res=Session::all();
dd($res);
}else{
echo "不存在请求的key值";
}*/
//forget删除Session中指定的key的值:
/*Session::forget('key1');
$res=Session::all();
dd($res);*/
//flush清空所有session信息
/*Session::flush();
$res=Session::all();
dd($res);*/
//flash:暂存数据,存储的数据只能输出一次
/*Session::flash('key-flash','val-flash');
echo Session::get('key-flash');*/
}
public function session2(Request $request){
}
有问题可以留言,或是看慕课网视频
1-2Controller之Session的更多相关文章
- session实现购物车
为实现简单的购物功能(购物车添加.账户查看.购物车商品删除.实时的购物商品数量及价格的计算显示.购物车商品数量可手动输入等),用session实现了一简单的以php语言为基础.连接MySQL数据库的购 ...
- Asp.net Core中使用Session
前言 2017年就这么悄无声息的开始了,2017年对我来说又是特别重要的一年. 元旦放假在家写了个Asp.net Core验证码登录, 做demo的过程中遇到两个小问题,第一是在Asp.net Cor ...
- 懒加载session 无法打开 no session or session was closed 解决办法(完美解决)
首先说明一下,hibernate的延迟加载特性(lazy).所谓的延迟加载就是当真正需要查询数据时才执行数据加载操作.因为hibernate当中支持实体对象,外键会与实体对象关联起来.如 ...
- 探索ASP.NET MVC5系列之~~~6.Session篇(进程外Session)
其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...
- Nhibernate的Session管理
参考:http://www.cnblogs.com/renrenqq/archive/2006/08/04/467688.html 但这个方法还不能解决Session缓存问题,由于创建Session需 ...
- nginx+iis+redis+Task.MainForm构建分布式架构 之 (redis存储分布式共享的session及共享session运作流程)
本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,上一篇分享文章制作是在windows上使用的nginx,一般正式发布的时候是在linux来配 ...
- zookeeper源码分析之六session机制
zookeeper中session意味着一个物理连接,客户端连接服务器成功之后,会发送一个连接型请求,此时就会有session 产生. session由sessionTracker产生的,sessio ...
- [转载]Cookie/Session的机制与安全
Cookie和Session是为了在无状态的HTTP协议之上维护会话状态,使得服务器可以知道当前是和哪个客户在打交道.本文来详细讨论Cookie和Session的实现机制,以及其中涉及的安全问题. 因 ...
- 修改session垃圾回收几率
<?php //修改session垃圾回收几率 ini_set('session.gc_probability','1'); ini_set('session.gc_divisor','2'); ...
- Nginx反向代理,负载均衡,redis session共享,keepalived高可用
相关知识自行搜索,直接上干货... 使用的资源: nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换. tomcat服务器两台,由nginx进行反向代理和负载均衡,此 ...
随机推荐
- maven阿里云镜像及本地仓库
一.添加阿里云镜像 1 找到maven的安装目录,conf文件夹下的setting.xml文件 2 打开setting.xml文件,找到mirrors节点添加阿里镜像库地址: <mirror&g ...
- session常用操作
session介绍: 1. session和cookie的区别在于,cookie是把信息保存在用户本地的浏览器中,而session是把信息保存在服务器端的内存中, 2. 浏览器向服务器发送一个类键值对 ...
- yum的配置文件介绍
yum 的配置文件分为两部分:main 和repository main 部分定义了全局配置选项,整个yum 配置文件应该只有一个main.常位于/etc/yum.conf 中. reposito ...
- Codeforces 377A - Maze
A. Maze 题目链接:http://codeforces.com/contest/377/problem/A time limit per test 2 seconds memory limit ...
- python requests库与json数据处理详解
1. http://docs.python-requests.org/zh_CN/latest/user/quickstart.html get方法将参数放在url里面,安全性不高,但是效率高:pos ...
- socket 发送图片
using System;using System.Collections.Generic;using System.Text;using System.Net.Sockets;using Syste ...
- 中标麒麟Linux7 如何关闭广播消息
chmod 600 /usr/libexec/sysnotify pkill -9 sysnotify
- WebStrom配置
1.下载安装Node.jshttps://nodejs.org/en/download/2.配置node路径3.修改文件默认字符集
- ubuntu opencv
sudo apt-get updatesudo apt-get upgrade sudo apt-get install build-essential libgtk2.0-dev libjpeg-d ...
- lanmp环境中创建个软连接
进入default,创建关于框架的链接 然后编辑配置文件 这样就可以在线上访问了.