细说PHP(十七)

17.1 为什么要使用会话控制

会话控制的思想就是允许服务器跟踪同一个客户端做出的连续请求

17.2 会话跟踪的方式

  • header()重定向
  • 使用cookie()将用户的状态信息存放在客户端的计算机之中
  • 使用session将用户的状态信息存放在服务器之中

17.3 cookie的应用

17.3.1 cookie概述

cookie是用来将使用者资料记录在客户端的技术

17.3.2 向客户端计算机中设置cookie

bool setcookie(string $name, string $value, int $expire, string $path, string $domain, bool $secure)

17.3.3 在PHP脚本中读取cookie的资料内容

任何从客户端发送过来的cookie信息,都被自动保存在$_COOKIE全局数组中,每个PHP脚本都可以从该数组中读取响应的cookie信息

17.3.4 数组形态的cookie应用

cookie可以利用多维数组的形式,将多个内容值存储在相同cookie名称标识符下。
可以在setCookie()函数的第一个参数中,通过在Cookie标识符中指定数组下标的形式设置

17.3.5 删除Cookie

  • 省略setcookie()函数的所有参数列,仅导入第一个参数Cookie识别名称参数,来删除指定名称的 Cookie资料
  • 利用setcookie()函数把目标Cookie设定为“已过期”状态

17.3.6 基于Cookie的用户登录模块

17.4 Session的应用

17.4.1 Session概述

  • cookie是在客户端计算机中保存资料,用户有权阻止cookie的使用
  • session是将使用者相关的资料存放在服务器的系统下,使用者无法停止session的使用

17.4.2 配置Session

17.4.3 Session的声明与使用

在PHP中必须调用session_start()函数,以便让PHP核心程序,将和Session相关的内建环境变量预先载入至内存中。

bool session_start(void)			//创建session,开始一个会话,进行session初始化

17.4.4 注册一个会话变量和读取Session

在PHP中使用Session变量,除了必须要自动启动之外,还要经过注册的过程。注册和读取Session变量,都要通过访问$_SESSION数组完成

<?php
	
	//启动Session的初始化
	session_start();

	//注册Session变量,赋值为一个用户的名称
	$_SESSION["username"] = "skygao";
	//注册Session变量,赋值为一个用户的ID
	$_SESSION["uid"] = 1;

执行该脚本后,两个Session变量就会保存在服务器端的某个文件中,该文件的位置是通过php.ini文件,在session.save_path属性指定的目录下,为这个访问用户单独创建一个文件,用来保存注册的Session变量

17.4.5 注销变量与销毁Session

当使用完一个Session变量后,可以将其删除。session_destory()函数用来关闭Session的运作(删除Session文件),如果成功返回TRUE,销毁Session资料失败则返回FALSE,但该函数并不会释放和当前Sessioon相关的变量,也不会删除保存在客户端Cookie中的SessionID

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

17.5 一个简单的邮件系统实例

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值