参考: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. MapReduce 编程模型概述

    MapReduce 编程模型给出了其分布式编程方法,共分 5 个步骤:1) 迭代(iteration).遍历输入数据, 并将之解析成 key/value 对.2) 将输入 key/value 对映射( ...

  2. spring+mybatis 多数据源切换

    摘自: http://www.oschina.net/code/snippet_347813_12525 1. 代码: DbContextHolder public class DbContextHo ...

  3. C# 解决无法识别的属性 configProtectionProvider

    在使用.Net自身提供的加密本配置文件后再用System.Configuration.ConfigurationManager.AppSettings["key"]获取值时会出现“ ...

  4. 求证:a^4+b^4 ≧a^3*b+a*b^3

    证明: a4+b4-a3b-ab3 =a3(a-b)-b3(a-b) =(a3-b3)(a-b) =(a-b)2(a2+ab+b2) 而a2+ab+b2=a2+ab+b2/4+3b2/4=(a+b/2 ...

  5. 超棒的在线Bootstrap主题编辑工具 - lollytin

    lollytin 是一款帮助制作Bootstrap3主题的在线工具,虽然现在仍旧是Beta版本,但是已经非常不错了. 主要功能: 通过拖拽来生成主题 支持拖拽页头,页脚,内容,幻灯,地图,表单,画廊, ...

  6. 创建sdcard.img时,提示permission dennid

    解决方法: mksdcard -l sdcard 100M E:\sdcard\sdcard.img 换一个盘试试,比如:mksdcard -l sdcard 100M F:\sdcard\sdcar ...

  7. dsPIC33EP 时钟初始化程序

    //文件名p33clk.h #ifndef _P33CLK_H_ #define _P33CLK_H_ //#include "p33clk.h" #define WDT_ENB ...

  8. Java 同步器

    CyclicBarrier是什么 CyclicBarrier也叫同步屏障,在JDK1.5被引入,可以让一组线程达到一个屏障时被阻塞,直到最后一个线程达到屏障时,所以被阻塞的线程才能继续执行.Cycli ...

  9. CentOS 6.3系统安装配置KVM虚拟机

      作业环境 服务器端 操作系统:CentOS 6.3 final x86_64 IP: 133.133.10.50 Hostname:myKVM KVM:qemu-kvm-0.12.1.2-2.29 ...

  10. 偏最小二乘回归(PLSR)- 2 标准算法(NIPALS)

    1 NIPALS 算法 Step1:对原始数据X和Y进行中心化,得到X0和Y0.从Y0中选择一列作为u1,一般选择方差最大的那一列. 注:这是为了后面计算方便,如计算协方差时,对于标准化后的数据,其样 ...