博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
laravel基础课程---7、文件处理、闪存、cookie(cookie原理和使用场景)
阅读量:6478 次
发布时间:2019-06-23

本文共 2804 字,大约阅读时间需要 9 分钟。

laravel基础课程---7、文件处理、闪存、cookie(cookie原理和使用场景)

一、总结

一句话总结:

页面请求服务器的时候是把这个页面中所有的cookie都带上了的cookie里面也存了session的信息,服务器根据这个session可以判断用户
登录:[如果未勾选自动登录 默认采用session(服务器判断session)(session关闭浏览器就失效)],[如果勾选自动登录 默认采用cookie]
浏览纪录:会在cookie中存一份

 

 

1、laravel中的闪存是什么?

作用:【表单验证错误】:Laravel 允许你将本次的输入数据保留到下一次请求发送前。这个特性在表单验证错误后重新填写表单相当有用。
原理:【存入session】:Illuminate\Http\Request 的 flash 方法会将当前输入的数据存进  中,因此下次用户发送请求到应用程序时就可以使用它们

 

 

2、闪存语法及实例?

把表单提交所有数据写入闪存:$request->flash(); 在页面中的对应的input标签的value属性中写value={
{old('input的name名称')}}
把谁写入闪存:$request->flushOnly();
除了谁写入闪存:$request->flushExcept();
把当前所有的数据都写入闪存:return back()->with('errors','用户名长度不满足')->withInput(); 这里的withinput()就是flash()的作用

 

 

3、回退到上一个页面?

return back()

 

4、laravel支持链式操作?

return back()->with('errors','用户名长度不满足')->withInput();

 

5、return back()->with('errors','用户名长度不满足')->withInput();是什么意思?

back():回退到上一个页面
with():向页面发送数据,可以在页面中用<?php dump($errors);?>来接收
把当前所有的数据都写入闪存:return back()->with('errors','用户名长度不满足')->withInput();

 

6、laravel图片上传操作?

使用 Illuminate\Http\Request 实例中的 file 方法获取上传的文件:$file = $request->file('photo');
form表单加上文件传输选项:enctype="multipart/form-data"

 

 

7、文件上传实例?

判断是否有文件:hasFile():if ($request->hasFile('img'))
文件名:time()+rand():$newFile=time().rand().".".$ext;
上传文件操作:move():$request->file('img')->move('./Uploads',$newFile);
// 获取上传文件    $img=$request->file('img');    $img2=$request->img;// 判断文件是否上传    var_dump($request->hasFile('img'));// 实例if ($request->hasFile('img')) {    // 获取后缀名    $ext=$request->file('img')->getClientOriginalExtension();    // 新的文件名    $newFile=time().rand().".".$ext;    // 上传文件操作    $request->file('img')->move('./Uploads',$newFile);}else{    // 回到上一个页面    return back();}[实际开发中 使用无刷新上传文件]

 

 

8、session和cookie如何使用(比如判断用户登录)?

看cookie中是否有用户信息,如果有,就将cookie信息存进session,然后登录,否则就让用户重新登录
登录:其实还是先从cookie判断起:[如果未勾选自动登录 默认采用session(服务器判断session)(session关闭浏览器就失效)],[如果勾选自动登录 采用cookie]

 

9、laravel中如何查看和设置cookie?

查看所有cookie:$request对象的cookie()方法:dd($request->cookie());
查看指定cookie:echo $request->cookie('laravel_session'); 或 echo \Cookie::get('laravel_session');
设置cookie:\Cookie::queue('shauige','非浩哥莫属',10);
设置cookie的实质:也就是将cookie信息写进浏览器缓存
1、COOKIE的使用场景    登录        [如果未勾选自动登录 默认采用session]        [如果勾选自动登录 默认采用cookie]    浏览纪录    [使用cookie和session 实现企业邮箱登录效果]2、注意:    laravel 框架把所有的COOKIE进行加密    $_COOKIE['name']  =/= $request->cookie('name');3、查看cookie    // 查看所有cookie        // dd($request->cookie());    // 查看cookie        echo $request->cookie('laravel_session');        echo \Cookie::get('laravel_session');4、设置cookie        // 设置COOKIE       \Cookie::queue('shauige','非浩哥莫属',10);       $cookie = cookie('name', 'value', 10);       return response('Hello World')->cookie($cookie);

 

 

10、laravel中$_COOKIE['name']  =/= $request->cookie('name'); 的原因是什么?

laravel 框架把所有的COOKIE进行加密

 

 

 

二、内容在总结中

 

 

 

 

转载于:https://www.cnblogs.com/Renyi-Fan/p/10841897.html

你可能感兴趣的文章
DHCP在VLAN中的端口
查看>>
Maven
查看>>
课后习题和问题 Chapter 2 Problems 10-18
查看>>
缓存系统在游戏业务中的特异性
查看>>
Ngrok搭建自己的内网穿透
查看>>
IBM的云品牌又换名字了
查看>>
在高性能的IO体系设计中,有几个名词概念常常会使我们感到迷惑不解。具体如下:...
查看>>
Linux centos7 firewall防火墙端口号区域各个含义
查看>>
centos查看实时网络带宽占用情况方法
查看>>
Gradle 4.1更新内容及注意事项
查看>>
h5语义化标签
查看>>
2019测试指南-web应用程序安全测试(二)指纹Web应用程序框架
查看>>
Map.containsKey方法——判断Map集合对象中是否包含指定的键名
查看>>
学习笔记TF047:PlayGround、TensorBoard
查看>>
让你甘愿等待的网页loading-夕阳下的奔跑
查看>>
ElasticSearch学习——环境搭建1
查看>>
手机号取模,字符串转长整型
查看>>
java 23种设计模式 深入理解
查看>>
jsp+javaBean+Servlet+jdbc+mysql微型网站解析
查看>>
DefaultMultipartHttpServletRequest的坑以及多文件上传CommonsMultipartResolver
查看>>