2026年10月31日 · 今日 0 帖 · 会员 6.1万 · 主题 17.4万
登录 · 注册 · 游客,欢迎随便逛逛
返回版块
只看作者:默默无辰 查看全部
59999
王者却具王侯心等级图标等级图标等级图标等级图标等级图标等级图标
勋章勋章勋章勋章勋章勋章勋章
帖子
384
回复
1.4万
积分
6万
注册
2011-07-08
查看 134 回复 0
楼主 发表于 | 查看全部
1 人收藏

PHP Session 概述

session 是一种客户与网站(服务器)更为安全的对话方式。一旦开启了 session 会话,便可以在网站的任何页面使用(保持)这个会话,从而让访问者与网站之间建立了一种“对话”机制。

常见的网上购物车,就是一个session会话的典型应用。我们在预定商品的时候,将选择好的商品放入购物车,实际就是开启一个商品的session会话。如果对选择的商品下了订单,则会将对应信息写入数据库;如果最终没有下订单,在用户关闭浏览器或退出登陆的时候,则会关闭session会话,选择的商品随即失效。

session 会话会为每一个开启了 session 会话的访问者建立一个唯一的会话 ID ,用于识别用户。该会话 ID 可能存储于用户电脑的 cookie 内,也可能通过 URL 来传递。而对应的具体 session 值会存储于服务器端,这也是与 cookie 的主要区别,并且安全性相对较高。

创建 session

要创建 session ,必须先使用 session_start() 函数开启一个 session 会话,系统会分配一个会话 ID:

<?php

session_start();

?>

使用 session_register() 函数注册一个 session 变量,成功返回 TRUE ,否则返回 FALSE 。

语法:

bool session_register( mixed name [, mixed ...] )

使用 session_register() 函数可以在目前会话下注册一个或多个全局 session 变量。

例子:

<?php

session_start();

$$username = “xiaoli“;

session_register(“username“);

?>

在该例子中,我们向 session 注册了一个名为 username 的变量,其值为 xiaoli 。

读取 session

PHP 内置的 $$_SESSION 变量可以很方便的访问设置的 session 变量。

例子:

<?php

session_start();

echo “登记的用户名为:“.$$_SESSION[“username“]; //输出 登记的用户名为:xiaoli

?>

销毁 session

可以通过 session_unregister() 函数来注销单个 session 变量或使用 session_unset() 来注销整个 session 会话。

例子:

<?php

session_start();

session_unregister(“username“); //注销 session 变量

session_unset(); //注销 session 会话

?>

另一种方式

可以通过直接添加 $$_SESSION 数组成员的方式注册 session 变量:

<?php

session_start();

$$_SESSION[“username“] = “xiaoli“;

?>

如果要注销这种方式注册的 session 变量,需要使用 unset() 函数:

<?php

session_start();

unset($$_SESSION[“username“]);

?>

读取 session 变量与销毁 session 会话则同前面的方式相同。

提示

不可使用 unset() 来销毁 session 会话。

登录回复

登录后可以回复这个帖子。旧账号可使用原密码登录。

登录 注册新号
← 返回版块