>使用PHP 7中的cookie涉及利用setcookie()
>函数将cookie从服务器发送到客户端的浏览器并使用$_COOKIE
> superllobal阵列检索它们。 setcookie()
函数采用几个参数:
name
(必需):value
expire
path
/
domain
secure
cookie有效的域。 省略这意味着cookie仅对当前域有效。 设置此设置允许在子域中共享cookie。true
httponly
(可选):如果设置为true
>,则只能通过https传输cookie。 这对于安全至关重要。(可选):
如果设置为<?php $expire = time() + 31536000; // One year from now setcookie("username", "john_doe", $expire, "/", ".example.com", true, true); ?>
<?php if (isset($_COOKIE["username"])) { echo "Welcome, " . $_COOKIE["username"] . "!"; } ?>
>示例:
设置一个名为“用户名”的持久曲奇,其价值为“ john_doe”,该值在一年内到期:<🎜>><🎜><🎜><🎜><🎜><🎜><🎜><🎜> <🎜>使用cookie的值: 7?<🎜><🎜>使用cookie时的安全性是最重要的。 必须解决几个关键考虑:<🎜>在设置和检索cookie时,secure
>中的setcookie()
flag在这里是必不可少的。httponly
> flag:httponly
设置SameSite
适当地利用安全属性。 了解将Strict
属性设置为Lax
或SameSite
的含义,以防止CSRF攻击。 urlencode()
始终正确编码cookie的值以防止注射攻击。 在将输入存储到cookie中之前,请使用 expire
setcookie()
持续cookie:
>的参数指定。 保持其他参数(路径,域)与最初设置的cookie的方式一致。
<?php $expire = time() + 31536000; // One year from now setcookie("username", "john_doe", $expire, "/", ".example.com", true, true); ?>
这有效地从客户端的浏览器中删除了cookie。请记住,浏览器可能仍会在很短的时间内实际删除曲奇,具体取决于其缓存机制。 另外,确保路径和域匹配原始调用对于成功的删除至关重要。setcookie()
以上是如何在PHP 7中使用cookie?的详细内容。更多信息请关注PHP中文网其他相关文章!