PHP中session(会话)技术

PHP session PHP session 用于暂时将信息从一个页面存储并传递到另一页面(直到用户关闭网站…


Warning: Attempt to read property "post_type" on null in /www/wwwroot/wper.net/wp-content/plugins/wper-meta.php on line 317

PHP session

PHP session 用于暂时将信息从一个页面存储并传递到另一页面(直到用户关闭网站)。

PHP session 技术广泛用于购物网站,我们需要在其中存储和将购物车信息(例如用户名,产品代码,产品名称,产品价格等)从一页传递到另一页。

PHP session 为每个浏览器创建唯一的用户ID,以识别用户并避免多个浏览器之间的冲突。

PHP session_start() 函数

PHP session_start()函数用于启动会话。它开始一个新的会话或恢复现有的会话。如果已经创建了会话,它将返回现有会话。如果会话不可用,它将创建并返回新的会话。

句法

session_start();
从 $_SESSION 中反注册变量

注意:千万不要使用 unset($_SESSION) 来复位超级变量 $_SESSION, 因为这样会导致无法继续在 $_SESSION 中注册会话变量。

PHP $ _SESSION

PHP $_SESSION是一个包含所有会话变量的关联数组。它用于设置和获取会话变量值。

示例:商店信息

示例:获取信息

PHP会话示例

PHP会话计数器示例

注销变量与销毁Session

当使用完一个Session变量后,可以将其删除,当完成一个会话后,也可以将其销毁。如果用户退出Web系统,就需要为他提供一个注销的功能,把他的所有信息在服务器中销毁。销毁和当前Session有关的所有的资料,可以调用session_destroy()函数结束当前的会话,并清空会话中的所有资源。该函数的语法格式如下所示:

bool session_destroy(void) //销毁和当前Session有关的所有资料

该函数并不会释放和当前Session相关的变量,也不会删除保存在客户端Cookie中的SessionID。因为$_SESSION数组和自定义的数组在使用上是相同的,所以我们可以使用unset()函数来释放在Session中注册的单个变量。如下所示:

unset($_SESSION[‘键名’]);

一定要注意,不要使用unset($_SESSION)删除整个$_SESSION数组,这样将不能再通过$_SESSION超全局数组注册变量了。但如果想把某个用户在Session中注册的所有变量都删除,可以直接将数组变量$_SESSION赋上一个空数组。如下所示:

$_SESSION=array()

PHP默认的Session是基于Cookie的,SessionID被服务器存储在客户端的Cookie中,所以在注销Session时也需要清除Cookie中保存的SessionID,而这就必须借助setCookie()函数完成。在PHP脚本中,可以通过调用session_name()函数获取Session名称。删除保存在客户端Cookie中的SessionID,代码如下所示:

通过前面的介绍可以总结出,Session的注销过程共需要4个步骤。在下例中,提供完整的四个步骤代码,运行该脚本就可以关闭Session,并销毁与本次会话有关的所有资源。代码如下所示:

session的phpini配置选项

 

类别:PHP 技巧

本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。

评论 (0)COMMENT

登录 账号发表你的看法,还没有账号?立即免费 注册