PHP学习笔记:删除与销毁session

删除某个session值可以使用PHP的unset函数,删除后就会从全局变量$_SESSION中去除,无法访问。

session_start();
$_SESSION[‘name‘] = ‘jobs‘;
unset($_SESSION[‘name‘]);
echo $_SESSION[‘name‘]; //提示name不存在

如果要删除所有的session,可以使用session_destroy函数销毁当前session,session_destroy会删除所有数据,但是session_id仍然存在。

session_start();
$_SESSION[‘name‘] = ‘jobs‘;
$_SESSION[‘time‘] = time();
session_destroy();

值得注意的是,session_destroy并不会立即的销毁全局变量$_SESSION中的值,只有当下次再访问的时候,$_SESSION才为空,因此如果需要立即销毁$_SESSION,可以使用unset函数。

session_start();
$_SESSION[‘name‘] = ‘jobs‘;
$_SESSION[‘time‘] = time();
unset($_SESSION);
session_destroy();
var_dump($_SESSION); //此时已为空

如果需要同时销毁cookie中的session_id,通常在用户退出的时候可能会用到,则还需要显式的调用setcookie方法删除session_id的cookie值。

任务

  使用unset删除name的session值。

<?php
session_start();
$_SESSION[‘name‘] = ‘jobs‘;
//在这里删除name的session值
unset($_SESSION[‘name‘]);
if (isset($_SESSION[‘name‘])) {
    echo $_SESSION[‘name‘];
    return;
}

  echo ‘session被销毁‘;
时间: 2024-08-29 14:52:16

PHP学习笔记:删除与销毁session的相关文章

学习笔记(五)Session 的创建和销毁 生命周期 表单重复提交及实现验证码

1. Session 的创建和销毁 page 指定的 session 属性: 1). 默认情况下, 第一次访问一个 WEB 应用的一个 JSP 页面时, 该页面都必须有一个和这个请求相关联的 Session 对象. 因为 page 指定的 session 属性默认为 true 2). 若把 session 属性改为 false, JSP 页面不会要求一定有一个 Session 对象和当前的 JSP 页面相关联所以若第一次访问当前 WEB 应用的 JSP 页面时, 就不会创建一个 Session

Tensorflow学习笔记2:About Session, Graph, Operation and Tensor

简介 上一篇笔记:Tensorflow学习笔记1:Get Started 我们谈到Tensorflow是基于图(Graph)的计算系统.而图的节点则是由操作(Operation)来构成的,而图的各个节点之间则是由张量(Tensor)作为边来连接在一起的.所以Tensorflow的计算过程就是一个Tensor流图.Tensorflow的图则是必须在一个Session中来计算.这篇笔记来大致介绍一下Session.Graph.Operation和Tensor. Session Session提供了O

jsp学习笔记 - 内置对象 session

1.session 主要用来用户的登录和注销 设置用户名,获取用户名 session.setAttribute("username","johnson"); session.getAttribute("username"); session.getid(); 获取session id 注销 response.addHeader("refresh","0;URL=login.jsp");  session.i

NSURLSession学习笔记(二)Session Task

原文地址 Session Task分为三种Data Task,Upload Task,Download Task.毫无疑问,Session Task是整个NSURLSession架构的核心目标. 下面写了一个简单的Demo来初步使用下三种任务对象.这里使用的是convenience methods,并没有定制session和使用协议,都是采用completionHandler作为回调动作. 故事板内容为: 第一种Data Task用于加载数据,使用全局的shared session和dataTa

Spring学习笔记--初始化和销毁Bean

可以使用bean的init-method和destroy-method属性来初始化和销毁bean.定义一个Hero类: package com.moonlit.myspring; public class Hero { public void born() { System.out.println("the hero is born."); } public void defaultBorn() { System.out.println("the hero is born b

JavaScript DOM编程 学习笔记-删除节点

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script type="text/javascript"> //测试removeChild()方法  删除节点 window.onload = function() { //alert(1

Mysql DBA 高级运维学习笔记-删除表中数据

9.11 删除表中数据 命令语法:delete from 表名 where 表达式 实践: (1)删除表student中编号为3的记录 mysql> use zbf Database changed mysql> select * from student; +----+-----------+-----+--------+ | id | name | age | dept | +----+-----------+-----+--------+ | 1 | zbf666| 29 | linux

oracle 学习笔记 删除example表空间

SQL> drop tablespace EXAMPLE  including  contents and datafiles; drop tablespace EXAMPLE  including  contents and datafiles * ERROR at line 1: ORA-29857: domain indexes and/or secondary objects exist in the tablespace ---提示:ORA-29857:表空间存在域索引和/次级对象 S

Git 学习笔记--删除错误提交的commit

如果不小心把错误的commit给commit了,可以对其进行撤销 1.使用git log查看commit日志,找到错误提交前一版本commit的哈希值; 2.使用git reset --hard commit_id; 3.git push origin HEAD --force(git push --force) 将修改提交到git服务器