PHP07
1、cookie
2、使用php操作cookie
设置响应头(header)中的Set-Cookie可以下发小票
检查-network-响应头处可查看所设置cookie
检查-application-cookie
检查-application-clearaAll
清除cookie
header('Set-Cookie:foo=bar');//以键值对的方式设置,若要设置多个,可以重复执行本语句
header函数在设置相同的键时会出现覆盖现象
专门设置cookie的函数:
setcookie(‘键’,‘值’) ;//只传键参数变为删除cookie,s删除的方式是使该cookie过期
cookie的超全局变量(关联数组):
$_COOKIE
设置cookie过期时间 setcookie(‘键’,‘值’,‘时间’) ;
不传参就是默认cookie是会话级别的,从浏览器打开到关闭有效。之后自动删除。
时间为int类型,传时间戳time()
查看cookie的path属性,若为
/表示网站根目录,即存在于网站根目录下的所有网页都可以访问该cookie
/user 表示只能在user路径下的文件才能访问,这是setcookie函数的第四个参数
setcookie(’…’,’…’,’…’,’/user’);
domain设置cookie的域名范围
js也可以操作cookie,但不能操作httponly的cookie,只能在服务端获取
3、JS操作cookie(重点)
1)document.cookie
将获取到所有的cookie键值对
追加cookie:
document.cookie=‘键=值’;
构造函数不传参是可不加括号
也有相关的操作cookie的jquery
cookie的问题:cookie可以恶意伪造
解决方法:可以对cookie进行加密或留cookie存根
4、Session:
超全局变量数组:
$_SESSION
涉及session的操作
cookie可用于本地存储
php产生随机数的方式:
random_int(a,b)a,b是范围
session的漏洞 :
session是强类型存储
cookie在设置完毕后不会立刻生效