cookie 和会话在 PHP 中是否相互依赖?
删除或清除其中任何一个会影响另一个吗?
在浏览器中禁用其中一个会影响另一个吗?
PS我是新手。
编辑:我在写问题时是新手。这个问题很多新手都会遇到。
cookie 和会话在 PHP 中是否相互依赖?
删除或清除其中任何一个会影响另一个吗?
在浏览器中禁用其中一个会影响另一个吗?
PS我是新手。
编辑:我在写问题时是新手。这个问题很多新手都会遇到。
他们完全独立...
简而言之,您可以更好地控制会话而不是 cookie
(1) 例如,如果您正在设置 cookie 名称demo
并且您正在使用启动画面,除非并且直到设置了演示,您才会显示启动画面
if(!isset($_COOKIE['demo'])) { //Now this will show lightbox always if user has disabled his cookies
<script>...</script>
}
文章
http://www.klovera.com/php-sessions-vs-cookies/
参考
会话存储在服务器上,而 cookie 存储在客户端上。您只能从浏览器中禁用 cookie。Cookies 根本不会影响会话。在禁用 cookie 的情况下,会话 ID 通过 URL 传递。如果您的 cookie 已启用并且会话 ID 通过删除 cookie 存储在 cookie 中,您将无法访问您的会话(它仍在服务器上,但您无法访问它)
会话也不能影响 cookie。
它们没有连接,但默认情况下 PHP 将会话 ID 存储在 cookie 中,指令session.use_cookies默认为 1
如果 cookie 被禁用,它将使用 URL。这可以使用session_use_trans_id 设置。(默认禁用)
但是如果你在客户端删除了一个会话cookie,那么下一个对服务器的请求将无法找到它关联的会话
清除会话不会影响 cookie,因为 cookie 是从客户端到服务器的 HTTP 请求中附加的。可以将 cookie 设置为在 x 时间后过期,然后在客户端将其删除。
所有答案都是正确的,只是想添加这个 - 如果你没有为 cookie 设置时间戳,那么 cookie 依赖于会话,它会在会话结束时过期。