PHP中的cookie和会话是否相互依赖?
删除或清除其中任何一个会影响另一个吗?
通过在浏览器中禁用其中任何一个会影响另一个吗?
P.S。我是新手。
编辑:在撰写问题时我是新手。许多新手都面临着这个问题。
答案 0 :(得分:1)
他们完全独立 ......
您可以更好地控制会话而不是使用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/
参考
答案 1 :(得分:1)
会话存储在服务器上,而cookie则存储在客户端上。您只能从浏览器中禁用Cookie。 Cookie根本不会影响会话。如果禁用cookie会话ID通过URL传递。如果您的cookie已启用且会话ID通过删除cookie存储在cookie中,您将无法访问您的会话(它仍在服务器上,但您无法访问它)
会话也不会影响cookie。
答案 2 :(得分:1)
它们没有连接,但默认情况下,PHP将会话ID存储在cookie中,指令session.use_cookies默认为1
如果禁用cookie,则使用URL。这可以使用session_use_trans_id.设置(默认为禁用)
但如果您在客户端删除会话cookie,则对服务器的下一个请求将无法找到其关联的会话
清除会话不会影响cookie,因为cookie附加了从客户端到服务器的HTTP请求。可以将cookie设置为在x时间后过期,之后将在客户端删除它。
答案 3 :(得分:0)
所有答案都是正确的,只是想添加它 - 如果你没有设置cookie的时间戳,那么cookie取决于会话,它会在会话结束后立即过期。