php操作cookie搜集 枫

1:

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

除了name之外所有的参数都是可选的。value,path,domain三个参数可以用空字符串代换,表示没有设置;expire 和 secure两个参数是数值型的,可以用0表示。expire参数是一个标准的Unix时间标记,可以用time()或mktime()函数取得,以秒为单位。 secure参数表示这个Cookie是否通过加密的HTTPS协议在网络上传输。

SetCookie("MyCookie", "Value of MyCookie");

带失效时间的:SetCookie("WithExpire", "Expire in 1 hour", time()+3600);//3600秒=1小时

什么都有的:SetCookie("FullCookie", "Full cookie value", time()+3600, "/forum", ".phpuser.com", 1);域名的格式可以是“www.phpuser.com”,也可是                          “.phpuser.com”。

SetCookie函数里表示value的部分,在传递时会自动被encode,也就是说,如果 value的值是“test value”在传递时就变成了“test%20value”,跟URL的方法一样。当然,对于程序来说这是透明的,因为在 PHP接收Cookie的值时会自动将其decode。 
如果要设置同名的多个Cookie,要用数组,方法是:

    SetCookie("CookieArray[]", "Value 1"); 
    SetCookie("CookieArray[]", "Value 2");

    SetCookie("CookieArray[0]", "Value 1"); 
    SetCookie("CookieArray[1]", "Value 2");

2:PHP操作Cookie2、接收和处理Cookie

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

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

echo $MyCookie; 
echo $CookieArray[0]; 
echo count($CookieArray); 
echo $HTTP_COOKIE_VARS["MyCookie"]; 

3

  •  

      使用Cookie的限制

      首先是必须在HTML文件的内容输出之前设置;

      其次不同的浏览器对Cookie的处理不一致辞,且有时会出现错误的结果。比如:MS IE+SERVICE PACK 1不能正确处理带域名和路径的 Cookie,Netscape Communicator 4.05和MS IE 3.0不能正确处理不带路径和时间的Cookie。至于 MS IE 5 好象不能处理带域名、路径和时间的Cookie。这是我在设计本站的页面时发现的。

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

      关于PHP操作Cookie的话题,就说到这儿了。

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

    一是调用只带有name参数的SetCookie,那么名为这个name的Cookie将被从关系户机上删掉;另一个办法是设置Cookie的失效时间为 time()或time()-1,那么这个Cookie在这个页面的浏览完之后就被删除了(其实是失效了)。

    要注意的是,当一个Cookie被删除时,它的值在当前页在仍然有效的。

    4

原文地址:https://www.cnblogs.com/mrray/p/2051084.html