前端PHP入门-034-Session技术-掌握级别

而Session是通过将数据保存在服务器端来实现保持连接的。我们通过一个例子来了解session的机制。

我们去饮料店买饮料,下单以后服务员会给我们一个号码牌,然后你走到一旁,服务员并不认识你是谁,如果你想拿到你的饮料,你必须提供你的号码牌给服务员才可以,服务员通过号码牌来查记录,来确认你是顾客,确认你点了什么饮料,然后才会把你点的饮料给你。

了解了session原理,再回到Web技术中,我们有2种方法让客户端拿到“号码牌”,一种是通过cookie,一种是通过把值嵌入网页传给客户端。我们也有2种方法来让客户端把号码牌传给服务器来拿属于自己的资料,一种是cookie,一种是标准的Query String/POST。

PHP中使用session

了解了session的原理后,我们来学习如何在PHP中使用session。

1.开启session

首先我们要开启session,那么第一个要学习的函数就是

bool session_start()了,这个函数没有参数。在php文件的开始使用

  1. session_start();

就可以启用新会话或者重用现有会话了。

2.添加session数据

开启会话之后,那么在接下来的处理中,我们就可以使用SESSION变量来存取信息了。我们要知道的是" role="presentation" style="position: relative;">SESSION变量来存取信息了。我们要知道的是SESSION变量来存取信息了。我们要知道的是_SESSION变量是个数组。当我们要把信息存入session的时候应该这么写:

  1. $_SESSION[‘userName‘] = ‘wang‘;

3.读取session数据

读取很简单,就像我们使用数组一样,如下:

  1. $userName = $_SESSION[‘userName‘];

当然也可以 $_SESSION[‘userName‘] 来用。和数组一样的使用。

**4.销毁session数据******

我们可以使用很多种方式来销毁session数据。

a) unset函数

我们通过使用类似

  1. unset($_SESSION[‘XXX‘]);

来销毁session中的 XXX 变量。PS:请不要!请不要!请不要unset(SESSION),会导致后续无法使用" role="presentation" style="position: relative;">SESSION),会导致后续无法使用SESSION),会导致后续无法使用_SESSION这个变量!!!

b) 空数组赋值给session变量

  1. $_SESSION = array();

之前我们说过SESSOIN变量是个数组,那么空数组赋值的话也是相当于将当前会话的" role="presentation" style="position: relative;">SESSOIN变量是个数组,那么空数组赋值的话也是相当于将当前会话的SESSOIN变量是个数组,那么空数组赋值的话也是相当于将当前会话的_SESSION变量中的值销毁。

c) session_destory() 函数

这个函数会销毁当前会话中的全部数据,并结束当前会话。但是不会重置当前会话所关联的全局变量, 也不会重置会话 cookie。

5.通过session来检查用户是否登陆和一个简单的购物车例子

6.session的扩展:默认session存储在哪里。

在php.ini配置文件中有这么一行 session.save_handler = files,

files : 说明了php默认的是用文件读写的方式来保存session的。那么在哪个目录呢?继续看。session.save_path = "/tmp",

这一行前面有个 ; ,说明是被注释的,不过即便这样,php默认的

session 也是保存在这里的,/tmp目录。上图:

从图中我们可以看到确实在这个目录下面,我们顺便看看里面的内容

我的写入session的语句是:

SESSION[′as′]=′as′;解读一下,第一个as代表的是" role="presentation" style="position: relative;">SESSION[′as′]=′as′;解读一下,第一个as代表的是SESSION[′as′]=′as′;解读一下,第一个as代表的是_SESSION[‘as‘]中的as,|后面的s表示的是这是一个字符串类型的数据,2表示的是这个字符串所占的字节数,最后双引号引起来的是值as。

PS:还可以自己动手试试存数字的话,|后面显示什么字母。还有,你还可以试试如果你存中文的话,字节数是多少?自己试!别看了!我不会告诉你的!!!

来自为知笔记(Wiz)

时间: 2024-10-06 19:51:43

前端PHP入门-034-Session技术-掌握级别的相关文章

前端PHP入门-028-文件操作-掌握级别

作为刚入门我们员经常会干的意见事情是ctrl+c和ctrl+v,鼠标右键删除文件.会control+c(或右键)复制.粘贴文件以及新建文件,还可以设置文件的是否为只读文件等等 可不可以写入修改配置文件? 是不是可以做PHP安装的时候检测文件的权限 是不是可以做生成Html文件等等很多不同的操作 对于美工的各位同学,可能不太好理解,也就是说让程序去控制文件的操作,让我们变的更懒一些 读取文件 掌握函数的使用 readfile 读取文件 int readfile ( string $文件名) 功能:

前端PHP入门-032-异常处理-应用级别

禁止显示错误 在php.ini配置文件中.我们可以控制php的错误显示状态. php.ini中有一个专门的配置项: display_errors 这个选项设置是否将错误信息输出到网页,或者对用户隐藏而不显示. 这个值的状态为 on 或者 off ,也可以设值为 1 或者 0 . display_error的值设为0或者off则不在页面中显示错误, 设为1或者on则显示错误信息. 问题:如果没有修改服务器php.ini的状态权限怎么办? 可以使用ini_set. <?php ini_set('di

前端PHP入门-029-文件操作-掌握级别

人生只有三天,活在昨天的人迷惑:活在明天的人等待:活在今天的人最踏实.你永远无法预测意外和明天哪个来得更早,所以,我们能做的,就是尽最大的努力过好今天.请记住:今天永远是昨天死去的人所期待的明天. file_put_contents写入文件 我们先来学习第一种写入文件的方式: int file_put_contents ( string 文件路径,string" role="presentation" style="position: relative;"

会话管理(Cookie/Session技术)

什么是会话:用户打开浏览器,点击多个超链接,访问服务器的多个web资源,然后关闭浏览器,整个过程就称为一个会话: 会话过程需要解决的问题:每个用户在使用浏览器与服务器进行会话的过程中,都可能会产生一些数据,这些输入如何来进行保存?比如用户在购物网站浏览的商品记录,用户添加购物车的记录等等这些信息如何进行存储?在程序中会话跟踪是一件非常重要的事情,一个用户的所有请求操作都应该属于同一个会话,而另一个人的所有请求操作应该属于另一个人,二者不能混淆!当想到需要在保存数据时,我们首先肯定会想到使用域对象

Web前端开发需要掌握的技术

在网络里搜索下,以前没有Web前端开发这个术语,现在有了Web前端开发术语.是我太落伍了吗?所以蛮看了下Web前端开发需要掌握的技术:HTML5,CSS3,Javascript,XML,JQuery,Prototype,响应式布局等等.慢慢学吧!一口气吃不成胖子的!坚持就是胜利!

JavaWeb之Session技术

session 服务器用于缓存数据会话技术 默认情况:session依赖于cookie 对象HttpSession 1.session原理: 根据上图分析如下: a.浏览器发送请求到服务器,并交给一个servlet进行处理.此时request.getSession()第一次创建session对象,将sessionId以cookie的方式发送给浏览器.同时在服务端会保存session,并且,有唯一的id. b.服务端将响应的信息发送到客户端,客户端会保存cookie信息. c.当浏览器再次请求的时

Session技术案例-用户注册验证码

项目名称:/sessionVerificationCode 项目目录: 项目源码: index.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" &quo

前端制作入门知识

原文链接:http://caibaojian.com/frontend-base.html 前端制作入门知识 A-A+ 前端博客•2015-08-18•前端开发•CSS | 前端基础•2020View1 文章目录 一.名词解释 二.文本格式化 三.表单表格 四.文本格式化 五.CSS布局 六.html5视频音频 七.一些约定 八.命名空间 九.基本设置-public.css 十.框架设置 来自百度文库:web前端学习总结(精华版),里面讲了许多的知识,非常适合刚进入前端的童鞋,就算一些有点基础的

会话之session技术(第七次课)

什么是Session 使用Cookie和附加URL参数都可以将上一次请求的状态信息传递到下一次请求中,但是如果传递的状态信息较多,将极大降低网络传输效率和增大服务器端程序处理的难度. Session技术是一种将会话状态保存在服务器端的技术 ,它可以比喻成是医院发放给病人的病历卡和医院为每个病人保留的病历档案的结合方式 . 客户端需要接收.记忆和回送 Session的会话标识号,Session可以且通常是借助Cookie来传递会话标识号. 同一用户的不同页面共享数据(Session) Sessio

前端面试所遇到的技术点

前端面试所遇到的技术点: 面试问题: HTML: 常见的HTML标签: (1)行标签和块级标签分别有哪些? (2)常见的HTML5的标签有哪些? (3)如何减少HTTP的请求和优化? 减少请求的资源方法: 将多个css资源文件打包到一个文件里.将多个js打包到一个js文件里.针对图片资源:可采用雪碧图将多个图片放置到一个图片里. 尽量的压缩css文件,js文件,图片文件,采用无损压缩的方式或者是使用webP格式的图片. (4)html5和HTML4的区别 html5可以自定义标签,并兼容html