第一次设置后,第二次访问才生效,决绝办法可以用js跳转首页实现刷新。

1.创建/更新cookie

setCookie($cookieName,$value,time()+秒数);

例子:创建一个cookie,名字为UserName,值为zs,过期时间为2个星期

setcookie("UserName","zs",time()+2*7*24*3600);

如果不设置时间,就不会保存到cookie文件中。浏览器不关时,能够访问。当浏览器关闭时,就无法访问了。

例子:setcookie("Age","18");

2.取cookie的值

$_cookie[$cookieName];

例子:取出UserName的值,放在变量$uName中

$uName=$_COOKIE['UserName'];

取值的时候,一般会先判断是否为空,再进行取值操作。上面的取值操作一般这样写:

if (!empty($_COOKIE['UserName']))
{

$uName=$_COOKIE['UserName'];

}

3.删除指定cookie

setcookie($cookieName,value,time()-秒数);

或者 setcookie($cookiename, '');

或者 setcookie($cookiename, NULL);

例子:删除UserName

setcookie("UserName","zs",time()-3600);

4.删除当前会话的所有cookie

foreach($_COOKIE as $key=>$val){

setcookie($key,"",time()-100);

}

当无cookie时,本机保存cookie的文件也将删除。

php100中例子:

<?php

if ($_POST[name]&&$_POST[pass]) {
setcookie('id',$_POST[name],time()+3600);//有效时间为一小时
setcookie('pass',$_POST[pass]);//不设置时间的话浏览器关闭时就失效。
echo "<script>location.href='cookie.php'</script>";
# code...
} if ($_GET[out]) {
setcookie('id',null);
setcookie('pass',null);
echo "<script>location.href='cookie.php'</script>";
# code...
} if ($_COOKIE['id']&&$_COOKIE['pass']){
echo "创建cookie成功<br />用户名:".$_COOKIE['id']."<br />"."密码".$_COOKIE['pass'];
echo "<br /><a href='cookie.php?out=1'>退出</a>";
# code...
} ?>
<meta http-equiv="content-type" content="text/html;charset=utf8">
<form action="" method="post">
<input type="text" name="name"><br>
<input type="password" name="pass"><br>
<input type="submit" value="创建">
</form>

  

05-11 15:09