21xrx.com
2024-12-22 22:38:15 Sunday
登录
文章检索 我的文章 写文章
php cookies.
2021-07-22 15:51:25 深夜i     --     --
p h p o o k i e s .


什么是cookies?

cookies通常用于识别用户。 cookie是一个小文件 服务器嵌入用户的计算机上。 每次相同的计算机请求 使用浏览器的页面,它也会发送cookie。 使用PHP,您可以创建 并检索cookie值。


使用php创建cookie

使用setCookie()函数创建cookie。

句法

setcookie(name, value, expire, path, domain, secure, httponly);

只需要名称参数。 所有其他参数都是 可选的。


PHP创建/检索cookie

以下示例创建一个名为“user”的cookie,其中值“John Doe“。cookie将在30天后过期(86400 * 30)。”/“意味着 Cookie在整个网站上提供(否则,选择您的目录 )。

然后,我们检索cookie“user”的值(使用全局变量 $ _cookie)。 我们还使用ISSET()函数来查明Cookie是否已设置:

<?php
$cookie_name = "user";
$cookie_value = "John Doe";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
?>
<html>
<body>

<?php
if(!isset($_COOKIE[$cookie_name])) {
  echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
  echo "Cookie '" . $cookie_name . "' is set!<br>";
  echo "Value is: " . $_COOKIE[$cookie_name];
}
?>

</body>
</html>

 

注意:setcookie()函数必须出现在<html>标记之前。

注意:cookie的值是自动encoded的时候 发送cookie,并在接收时自动解码(以防止 URLEncoding,使用setraWcookie()而不是)。


 


修改cookie值

要修改cookie,请再次使用setcookie()函数:

<?php
$cookie_name = "user";
$cookie_value = "Alex Porter";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>
<html>
<body>

<?php
if(!isset($_COOKIE[$cookie_name])) {
  echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
  echo "Cookie '" . $cookie_name . "' is set!<br>";
  echo "Value is: " . $_COOKIE[$cookie_name];
}
?>

</body>
</html>

 


删除cookie.

要删除cookie,请使用到期日期的setcookie()函数 :

<?php
// set the expiration date to one hour ago
setcookie("user", "", time() - 3600);
?>
<html>
<body>

<?php
echo "Cookie 'user' is deleted.";
?>

</body>
</html>

 


检查cookie是否已启用

以下示例创建一个小脚本,检查cookie是否是 启用。 首先,尝试使用setcookie()函数创建测试cookie,然后 计算$ _cookie数组变量:

<?php
setcookie("test_cookie", "test", time() + 3600, '/');
?>
<html>
<body>

<?php
if(count($_COOKIE) > 0) {
  echo "Cookies are enabled.";
} else {
  echo "Cookies are disabled.";
}
?>

</body>
</html>

 


完整的PHP网络参考

对于网络函数的完整参考,请转到我们的完整 PHP网络参考。


PHP练习

用练习来测试自己

锻炼:

创建名为“用户名”的cookie。

("username", "John", time() + (86400 * 30), "/");

 

 

 

  
  
下一篇: PHP session

评论区

{{item['qq_nickname']}}
()
回复
回复