参考: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即可。
?>

删除当前会话

跟着百度学PHP[9]-session会话的更多相关文章

  1. 跟着百度学PHP[9]-session与cookie的异同

    COOKIE cookie是将数据存储在客户端中,以此建立客户端与服务器之间的联系,但是cookie任然有一些局限性: 1.cookie相对不是很安全,容易被盗用导致cookie欺骗. 2.单个的co ...

  2. 跟着百度学PHP[15]-session回收机制

    gc(Garbage Collection 垃圾回收) 在用户访问的时候会生成许多的临时session文件,顾名思义session回收机制就是用来删除这些临时文件的. session.gc_maxli ...

  3. 跟着百度学PHP[15]-SESSION的应用/网站登陆案例完整案例

    先把几个应该要有的页面建立好.

  4. 跟着百度学PHP[14]-PDO之Mysql的事务处理2

    前面所将仅仅是在纯mysql下的讲解,这节就是要将其搬到PDO台面上来了. 将自动提交关闭. SetAttribute下有一个PDO::ATTR_AUTOCOMMIT 将其设置为0即可关闭,如:$pd ...

  5. 跟着百度学PHP[15]-会话控制session的工作机制

    COOKIE和SESSION的两大区别: cookie是存储与客户端 session是存储与服务端 需要开启session的时候需要使用session_start开启,且session的开头不能拥有任 ...

  6. 跟着百度学PHP[7]会话控制(session与cookie) 1.cookie的设置

    参考慕课网:http://www.imooc.com/learn/26 参考W3C:http://www.w3school.com.cn/php/php_cookies.asp setcookie() ...

  7. 跟着百度学PHP[17]-PHP扩展CURL的用法详解

    实现的功能: 1.实现远程获取和采集内容2.实现PHP 网页版的FTP上传下载3.实现模拟登陆:去一个邮件系统,curl可以模拟cookies4.实现接口对接(API),数据传输等:通过一个平台发送短 ...

  8. 跟着百度学PHP[17]-PHP扩展CURL的POST传输数据

    如果是GET的话就不必那么多设置.但是基本需要用到POST就需要用到以下的几个设置选项. <?php $username = "admin"; $password = &qu ...

  9. 跟着百度学PHP[6]超级全局变量

    超级全局变量在PHP 4.1.0之后被启用, 是PHP系统中自带的变量,在一个脚本的全部作用域中都可用. 参考文献:http://www.runoob.com/php/php-superglobals ...

随机推荐

  1. USD Series: Installation

    Today I would like to talk is Unified Service Desktop. It was published in Dynamics CRM 2013 Spring ...

  2. CAD设置图层透明显示

    在生产制图过程中,图层有利于更好的地理信息的分类,但显示就有些问题了,比如多个面层重叠.通常为了显示多个面重叠区域的特征,我们通常的做法是设置图层填充(符号填充,如地籍处理中经常这样做),或者设置图层 ...

  3. FileItem 出现部分中文乱码解决办法

    首先要进行两处的修改: 第一:如果你使用了上传文件的包, 如:ServletFileUpload sfu = new ServletFileUpload(factory); sfu.setHeader ...

  4. UISearchBar cancel 按钮设置文本

    主要是在 UISearchDisplayDelegate中更改: - (void)searchDisplayControllerWillBeginSearch:(UISearchDisplayCont ...

  5. ant design pro (四)新增页面

    一.概述 参看地址:https://pro.ant.design/docs/new-page-cn 这里的『页面』指配置了路由,能够通过链接直接访问的模块,要新建一个页面,通常只需要在脚手架的基础上进 ...

  6. 怎样获取oracle dbid

    1.查询v$database获得 因为DBID在控制文件和数据文件里都存在记录,所以假设可以mount数据库就行查询v$database视图获得.  SQL> alter database mo ...

  7. 转:教会你如何编写makefile文件

    最近一直在学习makefile是如何编写的.当我们写的程序文件比较少的时候,敲入gcc /g++,当你在大型工程中,在一个个编译文件的话,你可能就会很郁闷.linux有一个自带的make命令,它让你的 ...

  8. Linux下将/TMP和/Var移动到共享分区

    2007-03-09 03:25:08    整理数据 首先,必须创建一个新分区专门用于存储频繁修改的文件.您可能希望将这个分区置于单独的磁盘上以增强性能.接下来,我将逐步说明将 /tmp 和 /va ...

  9. Android中源码Launcher主屏幕程序排列详解【安卓Launcher进化一】

    最近研究Lancher,从短信Mms的框架中过度到Launcher的bug和需求修改中,下面对launcher最简单的主屏幕程序的程序的布局的详 解,给读者一个入门的感觉,android的主屏幕一共分 ...

  10. IntelliJ IDEA导航特性Top20

    在前面的文章里,我介绍了IntelliJ IDEA(以下称IntelliJ)中与代码补全及重构相关的特性.今天我将介绍另外一个利器——IntelliJ的导航(Navigation),只要运用得当,它将 ...