cookie 常用于识别用户,cookie 是服务器留在用户计算机中的小文件,每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie,通过 php,您能够创建并取回 cookie 的值
语法:setcookie(name, value, expire, path, domain);
- **
- * 设置cookie
- * n 名称
- * c 值
- * e 有效期 0 默认 一个月 1 关闭立即失效
- */
-
- function w_cookie($n, $c, $e = 0,$isdes=1)
- {
- if($isdes==1){$c=endes($c,deskey);}
- $exp = time() + 3600 * 24 * 30;
- if($e == 0)
- {
- setcookie($n, $c, $exp,"/");
- }
- else
- {
- setcookie($n, $c,0,"/");
- }
- }
关闭cookie方法:w_cookie('bb', 'www.phpfensi.com', $e = 0,$isdes=1);
更详细的方法如下代码:
- <?php
- function set_cronology($name,$value,$duration=7){
- $duration=time()+(3600*24*$duration);
- $max_stored_values=5;
- if(isset($_cookie[$name])){
- foreach($_cookie[$name] as $prop_crono=>$val_crono){
- if($val_crono==$value)
- return;
- }
- if($prop_crono<$max_stored_values)
- setcookie($name.'['.($prop_crono+1).']',$value,$duration);
- else{
- array_shift($_cookie[$name]);
- setcookie("$name[$max_stored_values]",$value,$duration);
- }
- }else
- setcookie($name.'[0]',$value,$duration);
- return;
- }
- ?>
注释:setcookie() 函数必须位于 <html> 标签之前,在发送 cookie 时,cookie 的值会自动进行 url 编码,在取回时进行自动解码(为防止 url 编码,请使用 setrawcookie() 取而代之). |