参考: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. mysql的安全性机制

    MySQL中主要包括两种用户:root用户和普通用户,其中前者为超级管理员,拥有MySQL提供的一切权限:而普通用户则只能拥有创建用户时赋予它的权限. MySQL的安全性机制主要包括权限机制,用户机制 ...

  2. C++primer习题--第3章

    本文地址:http://www.cnblogs.com/archimedes/p/cpp-primer-chapter3-ans.html,转载请注明源地址. [习题 2.11]编写程序,要求用户输入 ...

  3. Android -- Spinner && AutoCompleteTextView

    Spinner 下拉选择框                                                                     Android给我们提供了一个Spi ...

  4. 开发者和系统管理者最喜爱的开源工具Vim 起步学习的五个技巧

    多年来,我一直想学 Vim.如今 Vim 是我最喜欢的 Linux 文本编辑器,也是开发者和系统管理者最喜爱的开源工具.我说的学习,指的是真正意义上的学习.想要精通确实很难,所以我只想要达到熟练的水平 ...

  5. idea maven项目模块中的Content Root

  6. [React] Refactor a Class Component with React hooks to a Function

    We have a render prop based class component that allows us to make a GraphQL request with a given qu ...

  7. Ext3.0中复杂表头样例

    注意要点:不出现滚动栏时要设置height和forceFit : false 效果例如以下图: this.columns = [{ header : '月份', dataIndex : '月份', w ...

  8. SELECT语句逻辑运行顺序,你知道吗?

    引言 这不是一个什么多深的技术问题.多么牛叉的编程能力.这跟一个人的开发能力也没有很必定的直接关系,可是知道这些会对你的SQL编写,排忧及优化上会有很大的帮助.它不是一个复杂的知识点.可是一个很基础的 ...

  9. STL - 函数作为算法的参数

    函数作为参数,相当于C++的函数指针, C#的委托 for_each函数参数: #include <iostream> #include <algorithm> #includ ...

  10. libtool工具的使用

    http://blog.sina.com.cn/s/blog_602f87700100fc8t.html libtool作用: libtool 是一个通用库支持脚本(/usr/bin/libtool) ...