php会话技术之Cookie应用举例

发布时间:2020-07-25编辑:脚本学堂
本文介绍下,有关php会话技术之cookie的应用实例,有需要的朋友,参考下吧。

Cookie是客户端技术,服务器把每个用户的数据以cookie的形式写给用户各自的浏览器。当用户使用浏览器再次访问服务器的WEB资源时,就会带着各自的数据去,这样,WEB资源处理的就是用户各自的数据了。

1、创建一个Cookie(在服务器端创建的)
 

复制代码 代码示例:
<?php   
    //把用户名和密码保存到客户端的cookie
    //setCookie 函数来实现
   //第一个参数表示cookie的key,第二个参数表示val,第三个参数是cookie的值,代表在客户端保存的时间,按秒计算
  
    setCookie("name","xiaoming",time()+3600);
    setCookie("password","123456",time()+300);
    setcookie("adress","北京",time()+300);
    setcookie("hobby","运动",time()+30);
    //echo date("y-m-d h:i:s",time());
    echo "保存成功";
?>

注意要点:
1,当浏览器访问该页面(test.php)的时候,服务器就会以Set-Cookie: name=xiaoming; expires=Mon, 06-May-2013 08:14:39 GMT 回送http响应,(测试浏览器IE)当浏览器获取到该信息后,就会保存该cookie的信息到本机的C:Documents and SettingsAdministratorCookies 目录下。
2,如果没有设置时间 cookie不会保存到客户端,当浏览器的会话结束,cookie就会失效。
3,cookie保存的信息实际上就是字符串。
4,客户端可以保存多个 键值对
5,cookie也可以保存中文,默认将会对中文进行urlencode进行编码。
6,cookie可以有多个键-值对,可以给不同的键值对设置有效时间。

测试:
 

复制代码 代码示例:

<?php
    echo "<pre>";
   
    print_r($_COOKIE);
    echo "</pre>";
   
    //获取指定key 对应的值
    if(!empty($_COOKIE['name'])){

        $name=$_COOKIE['name'];
        echo "name=".$name;
    }else{
   
        echo "没有了";
    }   
    //echo urldecode("%E5%8C%97%E4%BA%AC");
?>

2、更新cookie
 

复制代码 代码示例:
<?php
    //更新cookie
    //更新address
    setCookie("address","shanghai",time()+300);
    echo "更新键address的值成功";
?>

3、删除cookie
 

复制代码 代码示例:

<?php
    //删除cookie 中的某个key  只有把 time()-秒数 就OK

    //    setCookie("password","",time()-1);
    //    echo "删除成功";

    //删除所有cookie 浏览器就会把cookie文件也删除掉了
    foreach ($_COOKIE as $key=>$val){
       
        setcookie($key,"",time()-100);

    }

    echo "删除成功";
?>

PHP会话技术之Cookie应用的小例子。

显示登录时间,如果是第一次登录就提示,您是第一次登录,如果不是就显示您上一次登录的时间。
示例:
 

复制代码 代码示例:

<?php
    //显示上次登录的时间 www.jb200.com
    if(!empty($_COOKIE['lastvisit'])){

        echo "您上次登录的时间是:".$_COOKIE['lastvisit'];
        //保存一个星期
        setcookie("lastvisit",date("Y-m-d H:i:s"),time()+7*24*3600);
       
    }else{
        echo "您是第一次登陆";
        setcookie("lastvisit",date("Y-m-d H:i:s"),time()+7*24*3600);
    }
?>

有关php会话技术之cookie操作的例子,就介绍这些吧,希望对大家有所帮助。