跟着百度学PHP[9]-session会话
参考:http://www.w3school.com.cn/php/php_sessions.asp
session变量用于存储有关用户的会话的信息,或更改用户会话的设置,session变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用。
session的工作机制就是为每一个访问者创建一个唯一的ID(UID),并基于这个UID来储存变量。UID储存在cookie中,亦或通过URL进行传导。
开始PHP session
目录/////////////////////////////////////////////
1.启动会话
2.注册会话
3.使用会话
4.删除会话
/////////////////////////////////////////////////
00x1
session的启动有两种方式:
1.使用session_start函数
2.使用session_register函数
1.session_start #该函数一般放置于页面的首端,在次之前不能有任何输出,否则会导致出错。
2.通过session_register函数创建会话,session_register是用来为会话创建一个变量来隐含的启动会话,但要求设置PHP.ini文件的选项即将reister_globals指令设置为on。然后重新启动apache即可。
使用session_start来创建一个session。
CODE:
<?php session_start(); ?>
<html>
<head><title>test</title></head>
<body>
</body>
</html>
上面的代码会向注册一个用户会话,以便保存用户的信息,同时服务器会为用户会话分配一个UID。
00x2 注册会话
当会话变量被创建了以后,全部的会话都会保存在$_SESSION 变量当中。通过数组$_SESSION要创建一个会话变量直接在数组里面增加元素即可。
例如下面的。启动会话,然后创建了一个admin变量赋值为空。
<?php
session_start();#启动sessioin
$_SESSION['admin'] = null;#声明一个admin的变量。并赋空值。
?>
00x3 使用会话
在使用一个会话之前肯定需要判断惠爱华变量是否有一个会话ID的存在,如果不存在,就创建一个,并且使其能够通过全局数组$_SESSION进行访问。如果已经存在,则将这个已创建的会话变量载入以供用户使用。
一个小的案例:判断admin会话是否为空,如果不为空的话就将其赋值给$myvalue变量。
<?php
if(!empty($_SESSION['admin'])) #判断admin这个会话是否回空。
$myvalue = $_SESSION['admin']; #将会话变量赋值给$myvalue变量。
?>
00x4 删除会话
删除会话有三种。删除当前的会话,所有的会话,单个的会话。
先来讲一下如何删除单个的会话(unset)。
<?php
session_start();
$_SESSION['hello'] = 'world';
unset($_SESSION['hello']); #删除hello这个会话。
?>
删除多个会话
直接将一个空的数组赋值给$_SESSION即可。
<?php
session_start();
$_SESSION['hello'] = 'world';
$_SESSION['ni'] = 'hao';
$_SESSION = array();#直接将一个空的数组赋值给一个$_SESSION即可。
?>
删除当前会话
最新文章
- linux2.6 内存管理——逻辑地址转换为线性地址(逻辑地址、线性地址、物理地址、虚拟地址)
- Erlang C1500K长连接推送服务-内存
- MongoDB学习笔记~MongoVUE对数据进行查询,排序和按需显示
- 开始JavaScript
- 过滤Xss
- Android 下载网络图片保存到本地
- 128. Longest Consecutive Sequence(leetcode)
- highcharts报表插件之expoting参数的使用
- ios开发环境 分支语句 、 循环结构(for) 、 循环结构
- Servlet Listener
- 深入浅出C++引用(Reference)类型
- Js获取日期时间及其它操作
- 8VC Venture Cup 2016 - Elimination Round (C. Block Towers)
- 3.MySQL之创建/删除用户
- Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。
- 常用的一些js和css
- SqlServer优化:当数据量查询不是特别多,但数据库服务器的CPU资源一直100%时,如何优化?
- hdu4549(费马小定理 + 快速幂)
- 用js制作数码时钟
- python locust 性能测试:locsut参数化-保证并发测试数据唯一性,不循环取数据
热门文章
- LruCache DiskLruCache 缓存 简介 案例 MD
- C#实现两个数据库之间的数据上报
- [React] Preventing extra re-rendering with function component by using React.memo and useCallback
- 用CSS下划线距离
- Cocos2d-x 2.x 升级为 3.x 常见变化纪录
- ipv6相关
- 【BIEE】安装好BIEE后,修改默认登录页面不为QuickStart页面
- 17-spring学习-AOP初步实现
- 企业版证书打包APP发布,安装后闪退问题解决。
- 【转帖】为什么不要把ZooKeeper用于服务发现