PHP中Session的作用

PHP session变量的作用是:存储用户的session信息,或者改变用户的session设置。Session变量储存了一个单一用户的信息,它可以被所有的页面使用。

PHP Session变量

当你在自己的计算机上运行一个应用程序时,你打开它,对他做一些改变,然后关闭它,这个过程和session很相似。计算机知道你是谁,知道你什么时候启动了应用程序,什么时候关闭了应用程序。但在互联网上,会出现这样一个问题:因为HTTP地址不可能永久的保留下来,所以服务器很难辨认你是谁,你在干什么。

PHP Session允许你在服务器上储存用户信息(如:用户名[username]、购物清单[shopping]等等),从而解决了这个问题。然而,session信息也是临时存在的,当你离开这个网站时,他会被自动删除。如果你想永久保留这些信息,你可以尝试着把它储存在数据库中。

Session通过为每个访问者创建一个独立的ID(UID)并储存基于UID的变量来运行。UID既存储在cookie中,又在URL中展现出来。

启动PHP Session

在你将用户信息存入PHP Session之前,你必须先启动Session。

注意:session_start()函数必须写在<html>标签之前:

<?php session_start(); ?>
<html>
<body></body>
</html>

上述代码将在服务器上注册一个用户的session,允许你储存用户信息,并为用户session指定一个UID。

储存一个Session变量

储存和获取session变量的最佳方法是使用PHP $_SESSION变量:

<?php
session_start();
// store session data
$_SESSION['views']=1;
?><html>
<body><?php
//retrieve session data
echo "Pageviews=". $_SESSION['views'];
?></body>
</html>

结果:

Pageviews=1

在上述案例中,我们建立了一个简易的页面计数器。Isset()函数检查“views”变量是否已经被设置。如果“views”变量已经被设置了,我们会增加我们的计数。如果“views”变量不存在,我们会先创建一个“views”变量,并把“1”赋给它。

<?php
session_start();
if(isset($_SESSION['views']))
$_SESSION['views']=$_SESSION['views']+1;
else
$_SESSION['views']=1;echo "Views=". $_SESSION['views'];
?>

删除Session

如果你希望删除一些session数据,你可以使用unset()函数或session_destroy()函数。

Unset()函数的作用是释放指定的session变量:

<?phpunset($_SESSION['views']);
?>

你也可以使用session_destroy()函数将session全部删除:

<?php
session_destroy();
?>

注意:session_destroy()会重新设置你的session,你会丢失所有已保存的session数据。

时间: 2024-10-01 23:40:54

PHP中Session的作用的相关文章

缓存-hibernate中session的作用解释,求教~~

问题描述 hibernate中session的作用解释,求教~~ <精通hibernate:java对象持久化技术详解>中提到session缓存的三种作用:减少DB的访问次数.保证同步.**当缓存中持久化对象存在循环关联关系时,保证不出现访问对象图的死循环,以及死循环引起的JVM堆栈溢出**.请问"**当缓存中持久化对象存在循环关联关系时,保证不出现访问对象图的死循环,以及死循环引起的JVM堆栈溢出**"的原因以及hibernate是怎么实现的呢?谢谢~~ 解决方案 ses

PHP 4.0.0中session.save

session PHP 4.0.0中session.save_path的bug 作者/ 这里向大家汇报我发现的一个4.0.0版的一个bug,只限于windows版本.那就是:在4.0.0版下,session.save_path如果使用绝对目录,即加上盘符的话,盘符不起作用.如session.save_path设为c: emp,此时存在c: emp目录.但是当php程序文件在其它盘上时,如在f盘上,c:不起作用.而是在处理session时寻找f盘上的 emp目录.如果f盘上无 emp目录,则会报如

实例讲解PHP网站开发中Session的使用方法

  PHP会话即SESSION是指用户从进入网站到关闭网站这段时间内活动的一种机制,它提供了所有网页都共同使用的公共变量存贮机制.那么SESSION到底有什么用处呢?网上购物时大家都用过购物车,你可以随时把你选购的商品加入到购物车中,最后再去收银台结帐.在整个过程中购物车一直扮演着临时存贮被选商品的角色,用它追踪用户在网站上的活动情况,这就是SESSION的作用.    SESSION的发明填补了HTTP协议的局限,HTTP协议被认为是无状态协议,当它在服务端完成响应之后,服务器就失去了与该浏览

PHP中session变量的销毁

本篇文章主要是对PHP中session变量的销毁进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 1.何为session? 相当于一个客户端(可以是浏览器.app.ftp等其他,而且同一个浏览器多开几个又算是不同的客户端)对服务器的一个访问,这个期间服务器为此建立一个唯一的标示(session_id session_name),其实也就是一个数组Array(),Session的开始和结束并不以业务上的输入用户名密码开始,也不以关闭浏览器和网页刷新而结束 2.session变量的销毁 程序

nginx中session ticket重用Session提高https性能分析

原创文章:来自nginx中session ticket重用Session提高https性能分析 https会话建立初次使用session ticket的SSL握手流程如下: Client Server ClientHello (empty SessionTicket extension)--------> ServerHello (empty SessionTicket extension) Certificate* ServerKeyExchange* CertificateRequest*

详解ASP.NET中Session的用法_实用技巧

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

JSP中 Session和作用域的使用_JSP编程

几乎所有的Web开发语言都支持Session功能,Servlet也不例外. Servlet/JSP中的Session功能是通过作用域(scope)这个概念来实现的. 作用域分为四种,分别为: page 在当前页面有效(仅用于JSP中) request 在当前请求中有效 session 在当前会话中有效 application 在所有应用程序中有效 是不是看不太明白?page因为仅用于JSP中,这里只讲述其他三种作用域. 首先要声明的一点,所谓"作用域"就是"信息共享的范围&q

thinkPHP中session()方法用法详解_php实例

本文实例讲述了thinkPHP中session()方法用法.分享给大家供大家参考,具体如下: 系统提供了Session管理和操作的完善支持,全部操作可以通过一个内置的session函数完成. 用法 session(name,name,value='') 参数 name(必须):如果传入数组 则表示进行session初始化,如果传入null表示清空当前session,如果是字符串则表示session赋值.获取或者操作. Value(可选):要设置的session值,如果传入null表示删除sess

thinkPHP中session()方法用法详解

本文实例讲述了thinkPHP中session()方法用法.分享给大家供大家参考,具体如下: 系统提供了Session管理和操作的完善支持,全部操作可以通过一个内置的session函数完成. 用法 session(name,name,value='') 参数 name(必须):如果传入数组 则表示进行session初始化,如果传入null表示清空当前session,如果是字符串则表示session赋值.获取或者操作. Value(可选):要设置的session值,如果传入null表示删除sess