`
only_java
  • 浏览: 112396 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

关于php中session和cookie

    博客分类:
  • php
阅读更多

 

 

创建cookie:

1.如果不指明cookie路径php将创建的cookie保存在当前上下文的路径中,比如我在/a/test.php中创建一个cookie,那么Php将在/a目录下生成一个cookie文件,而只有在/a目录下的文件才能访问此cookie

2.一般做法是将路径设为‘/’,这样创建的cookie将在整个域名下都有效。

引用手册上一段:

 

If set to '/', the cookie will be available within the entire domain. If set to '/foo/', the cookie will only be available within the /foo/ directory and all sub-directories such as /foo/bar/ of domain. The default value is the current directory that the cookie is being set in. 

  

 

 

 

3.如果不指明cookie失效时间的话,cookie将在关闭浏览器后失效

 

 

If set to 0, or omitted, the cookie will expire at the end of the session (when the browser closes). 

 

 

4.cookie生成后是伴随在http包中发布出来,所以在生成cookie后不能立马获得cookie值,只能通过下次请求获得!因为那时cookie已经夹在http包中。

 

销毁cookie:

 

很多情况下,我们会将cookie和session结合使用。所以必定会牵涉到cookie和session的销毁问题。这就牵涉到先销毁谁的问题,访问网站的来客会被分配一个唯一的标识符-sessionid关联用户创建的cookie,所以得先销毁cookie再销毁session

 

session_destroy() destroys all of the data associated with the current session. It does not unset any of the global variables associated with the session, or unset the session cookie. 

In order to kill the session altogether, like to log the user out, the session id must also be unset. If a cookie is used to propagate the session id (default behavior), then the session cookie must be deleted. setcookie() may be used for that. 

 

<?php
// Initialize the session.
// If you are using session_name("something"), don't forget it now!
session_start();

// Unset all of the session variables.
$_SESSION = array();

// If it's desired to kill the session, also delete the session cookie.
// Note: This will destroy the session, and not just the session data!
if (isset($_COOKIE[session_name()])) {
    setcookie(session_name(), '', time()-42000, '/');
}

// Finally, destroy the session.
session_destroy();
?> 

 

 

分享到:
评论

相关推荐

    TP5 Session和Cookie

    标题中的“TP5 Session和Cookie”指的是在PHP的ThinkPHP5框架中关于用户会话管理和Web身份验证的两个核心概念。在Web开发中,Session和Cookie是常见的用户状态管理工具,用于跟踪用户在网站上的行为。 Session是...

    thinkphp中session和cookie无效的解决方法

    主要介绍了thinkphp中session和cookie无效的解决方法,涉及针对BOM头的分析与删除方法,具有一定的参考借鉴价值,需要的朋友可以参考下

    关于session与cookie的原理简述

    - Session ID默认存储在名为`PHPSESSID`的Cookie中。 2. **存储和读取Session数据** - 使用`$_SESSION`超全局数组存取数据: ```php $_SESSION['username'] = 'John'; echo $_SESSION['username']; ``` 3. *...

    php自定义session,cookie

    php自定义session,cookie,不依赖客户端及服务器设置,非常实用,自编,0分贡献,有什么意见建议可留言回复我,本人菜鸟,勿喷

    PHP创建和使用session cookie变量

    ### PHP 创建和使用 Session Cookie 变量 #### Session 基础 Session 是一种服务器端...综上所述,Session 和 Cookie 都是 PHP 中非常重要的概念,了解它们的使用方法和区别对于开发高质量的 Web 应用程序至关重要。

    Session&Cookie;.rar

    在Web开发中,Session和Cookie是两种非常重要的用户状态管理工具。它们主要用于在HTTP协议无状态的特性下,保持用户的会话信息,实现用户在不同页面间的个性化体验和数据跟踪。下面将详细介绍这两种机制以及它们在...

    PHPsession和cookie讲解笔记

    在Web开发中,会话(Session)和Cookie是两种常见的用户状态管理机制,它们用于跟踪用户在网站上的行为,确保不同页面间的信息传递。 1. **什么是会话(Session)** - 会话是服务器端存储用户状态的一种方式。当...

    session与cookie的区别以及配置使用

    当用户访问某个网站时,服务器会在用户的设备上创建一个唯一的Session ID,并将此ID存储在Cookie中。服务器端可以根据这个Session ID来检索与该用户相关的会话数据。 两者的主要区别在于: 1. **存储位置**:...

    PHP100视频教程 32:PHP5中Cookie与 Session详解

    1、Cookie和Session简介与区别Session信息是存放在server端,但session id是存放在client cookie的,当然php的session存放方法是多样化的,这样就算禁用cookie一样可以跟踪Cookie是完全保持在客户端的如:IE firefox...

    php_session与cookie会员登录验证实例

    在本文中,我们将深入探讨PHP中的Session和Cookie技术,以及如何使用它们进行会员登录验证。首先,让我们理解这两个概念。 **PHP Session**: Session是PHP提供的一种机制,用于在用户的不同页面请求之间存储数据。...

    一次搞明白 Session、Cookie、Token,面试问题全搞定.pdf

    客户端会通过Set-Cookie头部获得这个sessionid,并将其存储在客户端的Cookie中。此后,客户端对服务器的每次请求都将携带这个sessionid,服务器通过读取这个标识来识别用户身份,从而恢复会话状态。 Session的优点...

    php.itcast.cn PHP课程-session和cookie的简单原理

    在这个"php.itcast.cn PHP课程"中,我们将深入探讨两个重要的用户状态管理技术:session和cookie。了解和掌握它们的工作原理对于任何PHP开发者来说都是至关重要的。 首先,让我们从cookie开始。Cookie是由Web服务器...

    关于Session和Cookie的一个PPT

    **标题解析:** "关于Session和Cookie的一个PPT" 指的是一个关于网络应用程序中的会话管理和状态跟踪技术的演示文稿。Session和Cookie是Web开发中的关键概念,用于在用户与服务器之间保持状态。 **描述分析:** ...

    PHP会话控制SESSION与COOKIE

    在实际开发中,开发者往往结合使用SESSION和COOKIE,比如使用SESSION存储敏感信息,使用COOKIE记录用户的非敏感偏好。合理利用这两种技术,能有效提升网站的用户体验和安全性。 为了进一步学习和实践PHP的会话控制...

    php session登录验证实例与 cookie登录验证实例

    // 解码并检查cookie中的用户ID $userID = decodeUserID($_COOKIE['userID']); if (isValidUserID($userID)) { // 用户已登录,显示受保护的内容 } else { // 用户ID无效,清除cookie并显示登录表单 ...

    php session和cookie使用说明

    PHP中的Session和Cookie是两种常用的身份验证和用户状态管理机制,它们各有特点,适用于不同的场景。 1. PHP的Cookie Cookie是一种在用户浏览器端存储数据的技术,用于跟踪和识别用户。当PHP应用需要设置Cookie时...

    PHP中session全面教程

    - **创建与存储:**当用户首次访问网站时,服务器会创建一个唯一的Session ID,并将其存储在客户端的Cookie中。 - **跟踪与更新:**每次用户发起请求时,都会携带这个Session ID,服务器通过这个ID来识别用户并提供...

    在PHP中浅谈Cookie与Session.pdf

    在PHP中,Cookie和Session都是用于存储用户信息的机制,但是它们有着不同的特点和应用场景。Cookie适用于存储小量的用户信息,而Session适用于存储大量的用户信息。同时,Cookie和Session也可以结合使用,以实现更好...

    PHP中session全面教程.txt

    ### PHP中的Session全面教程 #### 一、Session概念与作用 在Web开发中,由于HTTP协议本身是无状态的,即服务器无法记住客户端用户的状态信息,因此为了...希望本文能够帮助您更好地理解和运用PHP中的Session机制。

    php简易购物车模块(含数据库备份,含COOKIE和SESSION两种方式)

    网上商城购物车实现原理,PHP+Mysql实现,包含使用Cookie和Session两种实现方式的源代码。使用前请先导入数据表备份到你的mysql数据库中,然后修改config.php文件中的数据库配置。供PHPer学习交流,有任何意见或建议...

Global site tag (gtag.js) - Google Analytics