最近读了一点《php核心技术与最佳实践》,看了cookie和session,有所收获,结合之前的认识参考了几篇博客,总结一下~~
cookie 是一种在远程浏览器端储存数据并以此来跟踪和识别用户的机制。
PHP在http协议的头信息里发送cookie, 因此 setcookie() 函数必须在其它信息被输出到浏览器前调用,这和对 header() 函数的限制类似。
可以用 setcookie() 或 setrawcookie() 函数来设置 cookie。也可以通过向客户端直接发送http头来设置。
bool setcookie ( string name [, string value [, int expire [, string path [, string domain [, bool secure [, bool httponly]]]]]] )
name: cookie的名称,即$_COOKIE这个全局数组的键值
value: cookie变量的值,参数为空,Cookie的值为空。Cookie不能保存boolean值,应用0表示false,1表示true。
expire: 有效期结束的时间,以秒为单位。
path: 有效目录,默认为“/”,即整个域名下有效。如果有需要,可以设置仅在某目录下有效。
domain: 有效域名,顶级域唯一,默认在本域名下。
secure: 是否对Cookie进行加密传输,默认为false.如果值为true,则cookie只能在https连接上有效,如果为默认值false,则http和https都可以。
httponly: 是否只使用HTTP访问Cookie。如果为1或true,客户端的javascript就无法操作Cookie,使用此参数可以减少XSS攻击的风险,但不是所有的浏览器都支持这个参数。此参数只在PHP5.2.0以上的版本有效。
例子:
立即学习“PHP免费学习笔记(深入)”;
<?<span php
</span><span $value</span> = 'something from somewhere'<span ;
</span><span setcookie</span>("TestCookie", <span $value</span>); <span /*</span><span 简单cookie设置 </span><span */</span>
<span setcookie</span>("TestCookie", <span $value</span>, <span time</span>()+3600); <span /*</span><span 有效期1个小时 </span><span */</span>
<span setcookie</span>("TestCookie", <span $value</span>, <span time</span>()+3600, "/~rasmus/", ".example.com", 1); <span /*</span><span 有效目录 /~rasmus,有效域名example.com及其所有子域名 </span><span */</span>
?>设置多个cookie变量: setcookie('var[a]','value');用数组来表示变量,但他的下标不用引号。这样就可以用$_COOKIE[‘var’][‘a’]来读取该COOKIE变量。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
C++高性能并发应用_C++如何开发性能关键应用
Java AI集成Deep Java Library_Java怎么集成AI模型部署
Golang后端API开发_Golang如何高效开发后端和API
Python异步并发改进_Python异步编程有哪些新改进
C++系统编程内存管理_C++系统编程怎么与Rust竞争内存安全
Java GraalVM原生镜像构建_Java怎么用GraalVM构建高效原生镜像
Python FastAPI异步API开发_Python怎么用FastAPI构建异步API
C++现代C++20/23/26特性_现代C++有哪些新标准特性如modules和coroutines
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号