<?php // session start session_start(); // 开始一个会话,如果要使用session程序最前面一定要加上这句 $_SESSION['user_id'] = ‘123′;//给一个session 变量赋值,如果该变量不存在即创建 echo $_SESSION['user_id'];//访问 session变量 $_SESSION = array();//清空所有session变量 session_destroy();//清除会话ID // session end // cookie start setcookie(’user_id’,123);//创建一个cookie变量user_id=123 echo $_COOKIE['user_id'];//访问 cookie变量 和变通变量一样 setcookie(’user_id’,0,time()-1);//删除cookie变量 // codie end // 该代码不可运行,只是将所有使用方法在这里列出,实际应该不同功能在不同页面使用,将在下面的例子中演示 ### PHP 创建和使用 Session Cookie 变量 #### Session 基础 Session 是一种服务器端技术,用于在用户的浏览器与服务器之间保持用户的状态信息。它通过一个唯一标识符(通常是 `session_id`)来跟踪用户的活动,这个标识符通常保存在客户端的一个 cookie 中。 ##### 创建 Session 在 PHP 中,要使用 Session,首先需要调用 `session_start()` 函数来初始化一个 Session。此函数必须放在任何 HTML 输出之前,以确保 Session 的正确启动。 ```php session_start(); ``` 一旦 Session 启动,就可以使用全局数组 `$_SESSION` 来存储和检索数据。例如,可以设置一个 `user_id` 的 Session 变量: ```php $_SESSION['user_id'] = '123'; ``` 这里将 `user_id` 设置为字符串 `'123'`。如果变量尚不存在,则会自动创建。若要读取此变量,可以直接使用 `$_SESSION['user_id']`: ```php echo $_SESSION['user_id']; ``` 这行代码将输出 `'123'`。 ##### 清除 Session 若要清除某个 Session 变量,可以将其值设为空数组: ```php $_SESSION['user_id'] = ''; ``` 或者,可以彻底清除所有 Session 变量: ```php $_SESSION = array(); ``` 可以通过调用 `session_destroy()` 函数来销毁整个 Session: ```php session_destroy(); ``` 这将清除 Session ID 并结束当前 Session。 #### Cookie 基础 Cookie 是一种小型的数据文件,通常由服务器发送到用户的浏览器,并存储在用户的计算机上。当浏览器再次访问同一服务器时,它会将这些 Cookie 发送回服务器,这样服务器就可以识别出特定的用户并提供定制化的体验。 ##### 创建 Cookie 在 PHP 中,可以通过调用 `setcookie()` 函数来创建 Cookie。例如,以下代码将创建一个名为 `user_id` 的 Cookie,其值为 `123`: ```php setcookie('user_id', 123); ``` ##### 访问 Cookie 要访问 Cookie,可以使用全局数组 `$_COOKIE`。例如,读取 `user_id` 的值: ```php echo $_COOKIE['user_id']; ``` 这将输出 `123`。 ##### 删除 Cookie 若要删除一个 Cookie,可以使用 `setcookie()` 函数并设置过期时间为过去的时间点: ```php setcookie('user_id', 0, time() - 3600); // 将过期时间设为一小时前 ``` #### Session 与 Cookie 的区别 虽然 Session 和 Cookie 都用于跟踪用户状态,但它们有一些重要的区别: - **Cookie 存储在客户端**:这意味着 Cookie 数据可能会被用户看到或修改。 - **Session 存储在服务器端**:这意味着 Session 数据更加安全,不会受到客户端的影响。 - **Cookie 大小有限制**:大多数浏览器限制每个站点的 Cookie 总大小不超过 4KB。 - **Session 没有大小限制**:可以存储更多的数据,但这也可能导致服务器资源的消耗增加。 - **安全性**:由于 Session 数据存储在服务器上,因此相对于 Cookie 更加安全。 在实际应用中,可以根据需要选择使用 Session 或 Cookie。例如,在需要高度安全性的场景下,通常会使用 Session;而在需要存储少量数据且不涉及敏感信息的情况下,可以使用 Cookie。 Session 和 Cookie 都是 PHP 中非常重要的概念,了解它们的使用方法和区别对于开发高质量的 Web 应用程序至关重要。
// session start
session_start(); // 开始一个会话,如果要使用session程序最前面一定要加上这句
$_SESSION['user_id'] = ‘123′;//给一个session 变量赋值,如果该变量不存在即创建
echo $_SESSION['user_id'];//访问 session变量
$_SESSION = array();//清空所有session变量
session_destroy();//清除会话ID
// session end
// cookie start
setcookie(’user_id’,123);//创建一个cookie变量user_id=123
echo $_COOKIE['user_id'];//访问 cookie变量 和变通变量一样
setcookie(’user_id’,0,time()-1);//删除cookie变量
// codie end
// 该代码不可运行,只是将所有使用方法在这里列出,实际应该不同功能在不同页面使用,将在下面的例子中演示
?>
<?php
// session start
session_start(); // 开始一个会话,如果要使用session程序最前面一定要加上这句
$_SESSION['user_id'] = ‘123′;//给一个session 变量赋值,如果该变量不存在即创建
echo $_SESSION['user_id'];//访问 session变量
$_SESSION = array();//清空所有session变量
- Hdnrnfgf2014-06-19只有几个常用函数简单介绍,其实能附加上例子会更好。
- Deng_qiping2012-06-22学习了一下,用户登录这块经常使用!
- 粉丝: 0
- 资源: 10
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Power Quality Disturbance:基于MATLAB Simulink的各种电能质量扰动仿真模型,包括配电线路故障、感应电机启动、变压器励磁、单相 三相非线性负载等模型,可用于模拟各种
- 教务管理系统(jsp+servlet+mysql)130225.rar
- 教务管理系统(jsp+servlet+mysql).rar
- 酒店订单管理系统(Jsp+servlet+mysql)130224.rar
- 酒店订单管理系统(Jsp+servlet+mysql).rar
- 乐趣大型购物系统 v1.1(jsp+servlet+mysql).rar
- 聊天系统(java+applet)130227.rar
- 龙门物流管理系统(Ext+SSH).rar
- 乐趣大型购物系统 v1.1(jsp+servlet+mysql)130223.rar
- 基于动态窗口算法的AGV仿真避障 可设置起点目标点,设置地图,设置移动障碍物起始点目标点,未知静态障碍物 动态窗口方法(DynamicWindowApproach) 是一种可以实现实时避障的局部规划算
- 内容管理系统(hibernate3+struts2+spring2).rar
- 内容管理系统(hibernate3+struts2+spring2)130224.rar
- 企业费用管理系统(SSH+Oracle).rar
- 企业费用管理系统(SSH+Oracle)130222.rar
- 企业级新闻系统(SSH+MYSQL).rar
- 通用的在线考试系统(jsp+struts+hibernate+oracle).rar