在非常多时候,我们需要跟踪浏览者在整个网站的活动,对他们身份进行自动或半自动的识别(也就是平时常说的网站登陆之类的功能),这时候,我们常采用  Cookie与 Session 来跟踪和判断。

Session信息是存放在server 端,但 session id是存放在 client cookie 的,当然  php的session 存放方法是多样化的,这样就算禁用  cookie一样可以跟踪Cookie是完全保持在客户端的如:  IE firefox 当客户端禁止cookie时将不能再使用

2、Cookie 的配置与应用

Setcookie(string name , string value, int expire,string path, string domain, int secure);

其中 name是 cookie 变量名称标识,你在 php中将能象使用普通变量名相同来用他引用  cookie变量。value 是cookie 变量的初始值,  expire 表示该cookie 变量的有效时间; path 为该 cookie 变量的相关路径; domain 表示 cookie 变量的网站; secure 则需在 https  的安全传输时才有效。

、Cookie 的配置与应用

接收和处理  Cookie

PHP对 Cookie  的接收和处理的支持非常好,是完全自动的,跟  FORM 变量的原则一样,特别简单。

比如设置一个名为  MyCookier 的Cookie  ,PHP 会自动从  WEB服务器接收的 HTTP 头里把它分析出来,并形成一个与普通变量一样的变量,名为  $ myCookie,这个变量的值就是 Cookie 的值。数组同样适用。另外一个办法是引用  PHP 的全局变量$HTTP_COOKIE_VARS 数组。

分别举例如下:(假设这些都在以前的页面里设置过了,并且仍然有效)

echo $MyCookie;

echo $CookieArray[0];

echo $_COOKIE["MyCookie"];

echo $HTTP_COOKIE_VARS["MyCookie"];

删除  Cookie

要删除一个已经存在的  Cookie ,有两个办法:

1 、 SetCookie("Cookie", "");

2 、 SetCookie("Cookie", "value" , time()-1 / time() );

使用  Cookie的限制

1 、必须在 HTML 文件的内容输出之前设置;

2 、不同的浏览器对 Cookie的处理不一致,且有时会出现错误的结果。

3 、限制是在客户端的。一个浏览器能创建的  Cookie 数量最多为30 个,并且每个不能超过  4KB ,每个WEB  站点能设置的  Cookie总数不能超过 20 个。

、Session 的配置与应用

session_start ();                    //  初始化 session. 需在文件头部

$_SESSION [name ]=value;  //  配置Seeeion

echo $_SESSION[ name ];    // 使用 session

isset( $_SESSION[ name ]);   //  判断

unset( $_SESSION[ name ]);   // 删除

session_destroy () ;         // 消耗所有 session

注意:  session_register() , session_unregister , session_is_registered 在 php5 下不再使用

PHP中Cookie与 Session的更多相关文章

  1. flask中cookie和session介绍

    flask中cookie和session介绍 一.cookie: 在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户.co ...

  2. 浅谈JS中的!=、== 、!==、===的用法和区别 JS中Null与Undefined的区别 读取XML文件 获取路径的方式 C#中Cookie,Session,Application的用法与区别? c#反射 抽象工厂

    浅谈JS中的!=.== .!==.===的用法和区别   var num = 1;     var str = '1';     var test = 1;     test == num  //tr ...

  3. thinkphp中cookie和session中操作数组的方法

    thinkphp中cookie和session中操作数组的方法 一.ThinkPHP模板中如何操作session,以及如果session中保存的是数组的情况 在ThinkPHP的模板中操作sessio ...

  4. flask中cookie和session设置

    flask中cookie和session介绍   一.cookie: 在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户. ...

  5. PHP中Cookie与Session的异同以及使用

    Cookie与Session的异同: 一.cookie机制 Cookies是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器.IETF RFC 2965 HTTP State Mana ...

  6. 关于缓存中Cookie,Session,Cache的使用

    文章来源:http://canann.iteye.com/blog/1941173 以前实现数据的缓存有很多种方法,有客户端的Cookie,有服务器端的Session和Application. 其中C ...

  7. Http中Cookie和Session介绍

    先介绍下B/S系统的工作的完整过程.首先客户端的浏览器发出请求,服务端的webserver接受到请求后,调用相关请求的页面进行处理,处理完后将结果发送给客户端的浏览器进行显示.只能是浏览器向webse ...

  8. web存储中cookie、session区别

    http协议是一种无状态的协议,浏览器对服务器的每一次请求都是独立的.为了使得web能够产生一些动态信息,就需要保存”状态”,而cookie和session机制就是为了解决http协议无状态而产生.c ...

  9. Django中cookie和session

    cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...

  10. nodejs中cookie、session的使用

    因为http会话的无状态性,为了标记用户的登录状态,便出现了cookie.cookie分为很多种,有普通cookie.签名cookie.json cookie等,这里主要记录下在express应用中如 ...

随机推荐

  1. 华为云PaaS首席科学家:Cloud Native +AI,企业数字化转型的最佳拍档

    近日,在2019华为全球分析师大会期间,华为云PaaS首席科学家熊英博士在+智能,见未来(华为云&大数据)的分论坛上,从云计算行业发展谈起,深入云原生发展趋势,对华为云智能应用平台做了深度解读 ...

  2. SQL进阶系列之2自连接

    写在前面 一般地,SQL的连接运算根据其特征的不同,有着不同的名称,比如内连接.外连接.交叉连接等,这些连接大多是以不同的表或视图为对象进行的,针对相同的表进行的连接成为自连接.理解自连接有助于我们理 ...

  3. 十大排序代码实现(python)

    目录 冒泡排序 快速排序 简单插入排序 希尔排序 简单选择排序 堆排序 二路归并排序 多路归并排序 计数排序 桶排序 基数排序 写在前面: 参考文章:十大经典排序算法 本文的逻辑顺序基于从第一篇参考博 ...

  4. Multiple network matches found for name 'selfservice', use an ID to be more specific.报错

    今天正在做openstack实例时输入neutron subnet-create --name selfservice   --dns-nameserver 114.114.114.114 --gat ...

  5. 通过命令行运行java出现"错误: 找不到或无法加载主类 "解决办法

    首先在命令行运行不需要写package路径, 而在ide中一般是有路径的 so举例说明 例如程序名为HelloWorldTest.java,程序中含有package helloWorld语句,而该包位 ...

  6. SpringBoot官方文档学习(三)配置文件、日志、国际化和JSON

    一.Profiles Spring配置文件提供了一种方法来隔离应用程序配置的各个部分,并使其仅在某些环境中可用.任何@Component.@Configuration或@ConfigurationPr ...

  7. 洛谷 P2401 不等数列 题解

    每日一题 day25 打卡 Analysis dp[i][j]=dp[i-1][j-1]*(i-j)+dp[i-1][j]*(j+1); 其中i和j是表示前i个数中有j个小于号,j<=i-1 要 ...

  8. C# 异步的简单用法

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  9. Oracle ALERT日志中常见监听相关报错之二:ORA-3136错误的排查 (转载)

    近期在多个大型系统中遇到此问题,一般来说如果客户端未反映异常的话可以忽略的.如果是客户端登陆时遇到ORA-12170: TNS:Connect timeout occurred,可以参考 http:/ ...

  10. TPC-H 下载参考

    CSDN免费下载地址 tpc-h-v2.17.3.zip tools https://download.csdn.net/download/zes2014/10558251