实现PHP中session存储及删除变量

首先大家需要了解一下,PHP中session什么意思?有什么用?

session中文的意思可以表示为“会话”,其本来的含义是指有始有终的一系列动作/消息,例如用户提问某个问题,然后被回答,这样一个完整的对话,就相当于一次会话。

而PHP session 变量就是用于存储有关用户会话的信息,或更改用户会话的设置。Session 变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用。

但是session会话信息是临时的,在用户离开网站后就会被删除。如果需要永久储存信息,就需要把数据存储在数据库中。

那么下面我们就结合简单的代码示例,为大家介绍PHP中session的基础用法,存储变量以及删除变量。

一、session存储变量

当你需要将用户的信息存储到session中时,必须先开启会话。

代码示例如下:

<?php
session_start();
$name="123";
$_SESSION['username']=$name;
$_SESSION['password']=$name;

echo $_SESSION['password'];

这里我们先开启会话,然后将变量$name存储到session中。通过echo输出,测试结果如下:

session_start() 会创建新会话或者重用现有会话。

二、session删除变量

1、使用unset()

<?php
session_start();
$name="123";
$_SESSION['username']=$name;
unset($_SESSION['username']);
echo $_SESSION['username'];

通过echo测试结果如下:

unset() 销毁指定的变量。

unset() 在函数中的行为会依赖于想要销毁的变量的类型而有所不同。

2、使用session_destroy()

session_destroy();

session_destroy() 销毁当前会话中的全部数据,但是不会重置当前会话所关联的全局变量, 也不会重置会话 cookie。如果需要再次使用会话变量,必须重新调用 session_start() 函数。

本篇文章就给关于PHP中session存储变量以及删除变量的方法介绍,也是非常简单的,希望对需要的朋友有所帮助!

(0)

相关推荐

  • PHP中如何使用Redis接管文件存储Session详解

    前言 php默认使用文件存储session,如果并发量大,效率会非常低.而redis对高并发的支持非常好,可以利用redis替换文件来存储session. 最近就遇到了这个问题,之前找了网上的一套直播系统给客户用,刚开始是没问题的,在后面人数上来之后网站开始变得卡顿,卡的一批.之后查看php慢日志发现session_start()的身影,好吧,原来是万恶的文件存储session,跟我之前进的坑一模一样--之前做的教务查询系统直接用的session没有用cookie,结果在高并发的情况下php原地

  • php session_decode函数用法讲解

    php session_decode函数怎么用? 作用:解码会话数据 语法: bool session_decode ( string $data ) 参数: data, 编码后的数据. 说明: session_decode() 对 $data 参数中的已经序列化的会话数据进行解码, 并且使用解码后的数据填充 $_SESSION 超级全局变量. php session_decode()函数使用示例1 <?php session_start(); $_SESSION['login_ok'] = t

  • PHP SESSION机制的理解与实例

    PHP SESSION的保存机制有两种方式,session.save_handler = files和session.save_handler = user,具体选用哪种方式保存,可以通过配置php.ini文件实现. 一.使用读写文件的方式保存 SESSION 数据(session.save_handler = files) 1. session_start() (1). session_start()是session机制的开始,它有一定概率开启垃圾回收,因为session是存放在文件中,PHP

  • PHP实现负载均衡session共享redis缓存操作示例

    本文实例讲述了PHP实现负载均衡session共享redis缓存操作.分享给大家供大家参考,具体如下: 1.首先先创建html表单页面 <meta chatset='utf-8'> <center> <form action="se.php" method="post"> <table> <tr> <td>帐号:</td> <td><input type="

  • PHP使用Redis实现Session共享的实现示例

    前言 小型web服务, session数据基本是保存在本地(更多是本地磁盘文件), 但是当部署多台服务, 且需要共享session, 确保每个服务都能共享到同一份session数据. redis 数据存储在内存中, 性能好, 配合持久化可确保数据完整. 设计方案 1. 通过php自身session配置实现 # 使用 redis 作为存储方案 session.save_handler = redis session.save_path = "tcp://127.0.0.1:6379" #

  • PHP实现用session来实现记录用户登陆信息

    PHP中session实现记录用户登录信息的问题,也是PHP面试题中比较常见的考点之一,是PHP学习者必须掌握的一个知识点. 对于初入门的PHP新手来说,或许有一定的难度.那么在之前的文章[PHP中session如何存储及删除变量的]中,也为大家介绍了PHP中session的基础含义,需要的朋友可以选择参考. 下面我们就通过具体的代码示例,为大家详细的介绍PHP中session实现记录用户登录信息的具体方法. 1.简单的登录界面代码示例: login.html <!DOCTYPE html>

  • 实现PHP中session存储及删除变量

    首先大家需要了解一下,PHP中session什么意思?有什么用? session中文的意思可以表示为"会话",其本来的含义是指有始有终的一系列动作/消息,例如用户提问某个问题,然后被回答,这样一个完整的对话,就相当于一次会话. 而PHP session 变量就是用于存储有关用户会话的信息,或更改用户会话的设置.Session 变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用. 但是session会话信息是临时的,在用户离开网站后就会被删除.如果需要永久储存信息,就需要把数据

  • Java中session存储Users对象实现记住密码

    之前做过cookie实现记住密码,这次换成session记住密码又做了一遍,有很多收获. 本次博客分为两部分.一部分是cookie和session的区别(面试经常被问道):另一部分是sesion实现记住密码,在Jsp页面和Controller页面的代码编写. 一.cookie和session区别 区别: 1.cookie是浏览器端技术:将数据保存到浏览器中,不安全:不可以保存中文保存时编码: URLEncoder.encode();取值时解码:URLDecoder.decode();. 2.se

  • PHP中session变量的销毁

    1.何为session?相当于一个客户端(可以是浏览器.app.ftp等其他,而且同一个浏览器多开几个又算是不同的客户端)对服务器的一个访问,这个期间服务器为此建立一个唯一的标示(session_id session_name),其实也就是一个数组Array(),Session的开始和结束并不以业务上的输入用户名密码开始,也不以关闭浏览器和网页刷新而结束 2.session变量的销毁程序代码<?phpsession_unset();session_destroy();?> session_un

  • php中Session的生成机制、回收机制和存储机制探究

    1.php中session的生成机制 我们先来分析一下PHP中是怎么生成一个session的.设计出session的目的是保持每一个用户的各种状态来弥补HTTP协议的不足(无状态).我们现在有一个疑问,我们都知道session是保存在服务器的,既然它用于保持每一个用户的状态那它利用什么来区别用户的呢?这个时候就得借助cookie了.当我们在代码中调用session_start();时,PHP会同时往SESSION的存放目录(默认为/tmp/)和客户端的cookie目录各生成一个文件.sessio

  • 详解iOS App开发中session和coockie的用户数据存储处理

    NSURLSession 在iOS7之后,NSURLSession作为系统推荐使用的HTTP请求框架,在进行前台请求的情况下,NSURLSession与NSURLConnection并无太大差异,对于后台的请求,NSURLSession更加灵活的优势就将展现无遗. 1.NSURLSession集合的类型 NSURLSession类提供3中Session类型: (1)Default类型:提供前台请求相关方法,支持配置缓存,身份凭证等. (2)Ephemeral类型:即时的请求类型,不使用缓存,身份

  • Zend Framework实现将session存储在memcache中的方法

    本文实例讲述了Zend Framework实现将session存储在memcache中的方法.分享给大家供大家参考,具体如下: 在zend framework中,已经可以将session存储在数据库中了,不过还不支持memcache,我简单得实现了一下. 下面是SaveHandler,文件名为 :Memcached.php ,将其放在 /Zend/Session/SaveHandler 目录下,代码如下(需要有php_memcache支持,因为字符长度限制,我把部分注释去掉了): require

  • PHP中删除变量时unset()和null的区别分析

    第一种方法:$varname=null 第二种方法:unset($varname) 这两种方法都可以删除变量,但结果有些许的差别. 代码: 复制代码 代码如下: <?php $a = array( 'a' => 'a', 'b' => 'b' ); $b = array( 'a' => 'a', 'b' => 'b' ); $a['b'] = null; unset($b['b']); print('<pre>'); print_r($a); print('<

  • 详解ASP.NET中Session的用法

    当用户在应用程序的页之间跳转时,存储在 Session 对象中的变量不会清除,而用户在应用程序中访问页面时,这些变量始终存在.当用户请求来自应用程序的 Web 页时,如果该用户还没有会话,则 Web 服务器将自动创建一个 Session 对象.当会话过期或被放弃后,服务器将终止该会话. 通过向客户程序发送唯一的 Cookie 可以管理服务器上的 Session 对象.当用户第一次请求 ASP 应用程序中的某个页面时,ASP 要检查 HTTP 头信息,查看是否有在报文中有名为 ASPSESSION

  • 关于PHP中Session文件过多的问题及session文件保存位置

    PHP的默认机制:每一次php请求,会有1/100的概率(默认值)触发"session回收".如果"session回收"发生,那就会检查/tmp/sess_*的文件,如果最后的修改时间到现在超过了1440秒(gc_maxlifetime的值),就将其删除,意味着这些session过期失效 一.session文件是什么 文件一般为 /tmp/sessions/sess_4b1e384ad74619bd212e236e52a5a174If username|s:9:&q

  • ThinkPHP中session函数详解

    在PHP中使用$_SESSION来操作session,而ThinkPHP提供了session的封装函数session().单单这一个函数就实现了session的增删改查的功能.下面我们分别来看其应用与实现. 该session()函数的定义是在Common/functions.php中定义. session配置 session($name='',$value='')函数有两个参数,$name为数组的时候是对session进行设置.使用如下: $name = array( 'name'=>'name

随机推荐