html' target='_blank'>Cookie是强大而方便的功能,它能提供一个范围内的全程变量,来看看cookie的语法:
setcookie(cookievalue, value, time, path, domain);
cookievalue是设置的 cookie 变量;
value 是将一个值设置成cookie的变量;
time 是这个 cookie 变量作用的时间;
path 是 cookie 作用的路径;
domain 是 cookie 作用的域。
注意:
在php程序内设置cookie时一定不能在html这个标记的后面设置,必须保证在设置cookie前无数据输出。
根据register_globals的设置,可以从cookie建立普通的php变量,不过一般不推荐依赖于此特性,因为出于安全考虑该选项通常是关闭的。
php会自动的接收和处理cookie,我们只需要在需要它的时候直接调用即可,你可以使用print_r($_cookie)把整个cookie数组的值全部打印出来。
下面看个例子:
setcookie("cookietime","2001-5-2",time()+3600,"/","test.php");
这个 cookie 设置的意思是给日期 "2001-5-2" 设置一个 cookie 变量 $cookietime ,其作用时间为 3600 秒,这个变量在 /test.php 里生效。
这时在 test.php 里加上 echo $cookietime; 就会显示出 2001-5-2 .
如果将 cookie 里的时间置空,那么关闭浏览器后,cookie 就失效了.
cookie有一个特殊的地方就是cookie设置的值并不会马上被执行,直到第二次引用时才会被执行,那么第一次引用的cookie值是什么呢?
就是cookie上一次设置的值,这儿理解起来有点费劲,没关系,举个例子就全明白了:
setcookie("cookietime",time,time()+3600,"/","test.php");
第一次引用时 $cookietime内没有值,第二次引用时发现 $cookietime 内的 time才显示出来,修该time为 2001:
setcookie("cookietime",2001,time()+3600,"/","test.php");
再执行一次,第一次引用时 $cookietime 的值为 time,第二次引用 $cookietime 的值才为 2001;
那么 cookie 的这个特性有何功用呢?聪明的读者可能已经知道其用法了,就是用于通告和报警功能上的。
看个关于使用cookie 这个特性的例子,这里程序要实现的功能是当用户下一次来浏览网站时,所有这个用户没看过的新信息后面都添加一个 (new),用cookie 来完成这个功能再简单不过了,至少在我看来还没有任何其它方法能比使用 cookie 来完成这个功能更简单的了.
存储信息自然需要时间值,只要数据库有存储与每条信息相关的时间值加上 cookie 就能完成这个看上去还不错的功能~
test.php:
$time=date('Y-m-d H:i:s');
setcookie("cookietime",$time,time()+3600000,"/","test.php");
......
......
//从数据库取出时间值
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答