1. 会话(Session)
会话是一个在服务器端保存用户信息的机制,它通过在客户端生成一个唯一的会话标识符(Session ID)来维护用户和服务器之间的通信。PHP 中的会话能够持久保存用户的数据,并且可以在多个页面之间共享这些数据。
1.1 启动会话
要在 PHP 中使用会话,首先需要启动会话。可以使用 session_start()
函数来启动会话,并创建一个唯一的会话 ID。
session_start();
一旦会话被启动,可以使用 $_SESSION
超全局数组来存储和访问会话数据。例如,以下代码创建一个会话变量 username
并赋值为 "John"
:
$_SESSION['username'] = "John";
1.2 销毁会话
当用户注销或者会话过期时,应该销毁会话以释放服务器资源。可以使用 session_destroy()
函数来销毁会话。
session_destroy();
销毁会话后,所有会话数据将被删除,并且会话 ID 将会失效。
2. Cookie
Cookie 是在客户端(浏览器)保存用户信息的一种机制。它会将数据保存在用户的电脑上,并在每次请求时自动发送给服务器。
2.1 设置 Cookie
要设置 Cookie,可以使用 setcookie()
函数。这个函数需要至少三个参数:Cookie 的名称、Cookie 的值和过期时间。
setcookie("username", "John", time() + 3600);
在上面的例子中,我们设置了一个名为 username
的 Cookie,值为 "John"
,过期时间为当前时间加上 3600 秒。
2.2 获取 Cookie
可以使用 $_COOKIE
超全局数组来获取 Cookie 的值。例如,以下代码获取名为 username
的 Cookie 的值:
$username = $_COOKIE['username'];
如果 Cookie 不存在或者已过期,上述代码将返回 null
。
2.3 删除 Cookie
要删除一个 Cookie,可以使用 setcookie()
函数,并将过期时间设置为之前的时间。例如,以下代码删除名为 username
的 Cookie:
setcookie("username", "", time() - 3600);
在上面的例子中,过期时间被设置为当前时间减去 3600 秒,这将导致 Cookie 立即失效。
总结
本文介绍了如何在 PHP 中使用会话和 Cookie 函数。会话可以用于在多个页面之间共享用户数据,而 Cookie 则适用于在客户端保存用户信息。通过掌握这些技术,可以更好地处理用户的身份验证和个性化数据存储。记住要合理使用会话和 Cookie,并注意保护用户的隐私。