A-A+

Cookie 与 Session

2012年02月04日 PHP技术文章 暂无评论 阅读 46 views 次

11.1.2 创建 Cookie

在 PHP 中通过 setcookie()函数创建 Cookie。在创建 Cookie之前必须了解的是,Cookie 是 HTTP 头标的组成部分,而头标必须在页面其他内容之前发送,它必须最先输出。若在 setcookie()函数前输出一个 HTML 标记或 echo 语句,甚至一个空行都会导致程序出错。语法格式如下:bool setcookie(string name[,string value[,int explre[,string path[,string domain[,int sesure]]]]])。

name:Cookie 的变量名。
value:Cookie 变量的值,该值保存在客户端,不能用来保存敏感数据。
expire:Cookie 的失效时间,expire 是标准的 UNIX 时间标记,可以用 time()函数或 mktime()函数获取,单位为秒。
path:Cookie 在服务器端的有效路径
secure:指明 Cookie 是否仅通过安全的 HTTPS,值为 0 或 1 创建 Cookie 常用于设置前两项。

11.1.3 读取 Cookie

在 PHP 中可以直接通过超级全局数组 $_COOKIE[]来读取浏览器端的Cookie值。

11.1.4 删除 Cookie

删除 Cookie 使用 setcookie() 函数。删除 Cookie 只需要将 setcookie()函数中的第二个参数设置为空值,将第3个参数 Cookie 的过期时间设置为小于系统的当前时间即可。例:setcookie("name","",time()-1);

11.2.2 创建会话 SESSION;

创建一个会话需要通过以下步骤:启动会话 -> 注册会话 -> 使用会话 -> 删除会话

1,启动会话:session_start()函数。说明:使用session()函数之前浏览器不能有任何输出。
2,注册会话:通过数组 $_SESSION 创建会话。格式:$_SESSION["values"] = "string"。
3, 使用会话:echo $_SESSION["values"];可以说判断会话变量是否有一个会话 ID 存在,如果不存在,就创建一个。
4, 删除会话:(1)删除单个会话,可以使用 unset()函数,如下:unset($_SESSION["user"]);(2)删除多个会话,可以将一个空的数组赋值给$_SESSION,$_SESSION = array();(3)结束当前会话:使用 session_destroy()函数清除结束当前的会话,并清空会话中的所有资源。

Cookie 小实例:

<?php 
if (isset($_COOKIE&#91;"visittime"&#93;)){
    setcookie("visittime",date("y-m-d H:i:s"));
    echo "欢迎您第一次访问网站!";
}else {
    setcookie("visittime",date("y-m-d H:i:s"),time()+60);
    echo "您上次访问网站的时间为:".$_COOKIE&#91;"visittime"&#93;;
    echo "<br>";
}
echo "您本次访问网站的时间为:".date("y-m-d H:i:s");
?>
标签:

给我留言