Session是PHP中用于跟踪用户会话状态的一种技术,在Web应用程序中,用户的每次请求都会被视为一个独立的会话,服务器会为每个会话分配一个唯一的ID,以便在整个会话期间跟踪用户的操作,本文将详细介绍PHP中的session使用方法。
1. 开启session
要使用session,首先需要在PHP脚本中调用`session_start()`函数,这个函数会在当前页面生成一个新的或已有的session,并为其分配一个唯一的ID,如果当前页面没有session,`session_start()`函数会自动创建一个新的session。
<?php// 开启sessionsession_start();?>
2. 设置session变量
要设置session变量,可以使用`$_SESSION`超全局数组,要将一个名为`username`的变量设置为”John Doe”,可以使用以下代码:
<?php// 开启sessionsession_start();// 设置session变量$_SESSION['username'] = 'John Doe';?>
3. 读取session变量
要读取session变量,可以使用相同的`$_SESSION`超全局数组,要读取上面设置的`username`变量,可以使用以下代码:
<?php// 开启sessionsession_start();// 读取session变量echo $_SESSION['username']; // 输出 "John Doe"?>
4. 删除session变量
要删除session变量,可以使用`unset()`函数,要删除上面的`username`变量,可以使用以下代码:
<?php// 开启sessionsession_start();// 删除session变量unset($_SESSION['username']);?>
5. 销毁session
要销毁当前页面的session,可以使用`session_destroy()`函数,这将释放与该会话相关的所有资源,要销毁上面的`username`变量,可以使用以下代码:
<?php// 开启sessionsession_start();// 销毁sessionunset($_SESSION['username']); // 先删除变量,再销毁会话(可选)session_destroy(); // 销毁会话本身(推荐)?>
6. 设置session过期时间
要设置session过期时间,可以在调用`session_start()`函数之前使用`ini_set()`函数设置`session.gc_maxlifetime`配置项,要将过期时间设置为1800秒(30分钟),可以使用以下代码:
<?php// 设置session过期时间(单位:秒)ini_set('session.gc_maxlifetime', 1800);// 开启session(此时已设置过期时间)session_start(); ?>
7. 获取session过期时间剩余量(可选)
要获取当前会话的过期时间剩余量,可以使用`$_SESSION[‘LASTACTIVITY’]`超全局数组,此数组包含上次会话活动的时间戳,要计算剩余时间,可以使用以下代码: