• 4.part4-2day php cookie和session


    一、cookie

    1.cookie是什么?

    cookie是一种在客户浏览器端存储数据并以此来追踪和识别用户的机制,简单来说,cookie是WEB服务器暂时存储再用户硬盘上上的一个文件,并随后被web浏览器读取。

    cookie中不能存大量的数据和敏感未加密的数据,否则会带来安全问题。

    2.如何创建、读取、删除cookie

    setcookie(name, value, expire, path, domin);

    <?php
        //创建cookie
        $expire = time() + 60 * 60 * 24 * 30; //有效期为一个月
        setcookie('user', 'tom', $expire);
     
        //读取cookie
        echo $_COOKIE['user'];
     
        //删除cookie 设置cookie的有效期为过去时间即可
        $delExpire = time() - 1;
        setcookie('user', 'tom', $delExpire);
    ?>

    3.cookie的生命周期

    如果不设置失效时间,浏览器关闭cookie就会消失

    如果设置了失效时间,超过时间会自动消失。

    4.要想再cookie中暂存数组之类的数据就要用到序列化和反序列化

    <?php
        serialize();  //序列化存值
        unserialize(); //反序列化取值
    ?>

    二、session

    1.什么是session?

    session会话是存储在服务端的,相对安全,可用于存储信息量相对较少且存储时间不长的数据。在实际应用中session用与存储登陆信息,这样就只需要登陆一次,就可以访问其他的页面

    当启动session会话时,会生成一个随机且唯一的session_id,也就是session文件名,此时session_id会存在服务器的内存中。当关闭页面时此id会自动注销,重新登陆此页面,会再次生成一个随机且唯一的id

    session会存储在cookie里默认的cookie名为PHPSESSION,值为对应的session_id,本地xampp的tmp里会又一个名为sess_加上对应的session_id的文件,里面是我们存储的信息,所以在使用session时客户端不能禁止cookie

    2.创建、读取、删除会话,前提是必须先启动会话

    <?php
        //启动会话
        session_star();
     
        //创建session
        $_SESSION['name'] = 'tom';
     
        //设置session时间
        $expire = time() * 60; //1分钟失效
        setcookie('PHPSESSION', 'session_id', $expire);
        //读取session
        echo $_session['name'];
     
        //删除某一个session
        unset($_SESSION['name']);
         
        //彻底删除session,重置session,将会失去所有已经存储的session数据
        session_destroy();
    ?>
  • 相关阅读:
    UI测试
    软件测试用例详解(转载)
    Mac设置命令别名
    CentOS7 开启免密登陆
    使用systemctl命令管理服务mysql
    Redis学习笔记02--主从数据库配置
    CentOS使用dnf安装Redis
    CentOS 7 防火墙设置
    Redis学习笔记01---配置文件
    CentOS7搭建Maven的Nexus私服仓库
  • 原文地址:https://www.cnblogs.com/ldwtry/p/12185580.html
Copyright © 2020-2023  润新知