PHP Cookie

cookie 常用于识别用户。cookie 是一种服务器留在用户计算机上的小文件。每当同一台计算机通过浏览器请求页面时,这台计算机将会发送 cookie。通过 PHP 能够创建并取回 cookie 值。

创建 Cookie

setcookie() 函数用于设置 cookie。且 setcookie() 函数必须位于 <html> 标签之前。

					
/*
 *   name: cookie 变量名。
 *  value: name-value 键值对,变量名 name 对应的变量值。 
 * expire: 过期时间。
 */
setcookie(name, value, expire, path, domain);
					
				
					
/*
 * 创建名为 "user" 的 cookie,并为它赋值 "wanghao",设定此 cookie 在一小时后过期。
 */
<?php
  setcookie("user", "wanghao", time()+3600);
 ?>
//或者:
<?php
  $expire = time() + 60*60*24*30;           //过期时间被设置为一个月(60 秒 * 60 分 * 24 小时 * 30 天)。
  setcookie("user", "wanghao", $expire);
 ?>

<html>

</html>
					
				

获取 Cookie

使用 isset() 函数来确认是否已设置了 cookie 变量。访问 PHP 的 $_COOKIE 变量用于获取 cookie 值。

					
<?php
  echo $_COOKIE["user"];       //"wanghao"

  print_r($_COOKIE);           //查看所有 cookie

  if(isset($_COOKIE["user"])) {
    echo "欢迎".$_COOKIE["user"];
  }
 ?>
					
				

删除 Cookie

设置过期日期为过去的时间点。

					
<?php
  //设置 cookie 过期时间为过去 1 小时
  setcookie("user", "", time()-3600);
  }
 ?>
					
				

浏览器不支持 Cookie 的情况

如果应用程序需要与不支持 cookie 的浏览器打交道,那么不得不使用其他的方法在应用程序中的页面之间传递信息。可以通过表单传递数据。