正不正经不知道 發表於 2019-5-27 19:52:00

PHP中Cookie的使用

<h2 id="什么是cookie">什么是Cookie?</h2>
<p>Cookie保存在客户端浏览器中,cookie是Http头的一部分,通过浏览器请求页面时,它会被通过Http头的形式发送过去。被请求的页面,可以通过PHP来获取cookie的值。<br>
Cookie和浏览器和域名相关,不同浏览器各自存储,cookie只会在当前域名发送,其他域名不会带上cookie去请求。</p>
<h2 id="设置cookie">设置Cookie:</h2>
<ul>
<li>语法:<br>
bool setcookie( string name,,,,);</li>
</ul>
<p>*参数说明:<br>
name:cookie名(必填)<br>
value:cookie值(可选)<br>
expire:过期时间,时间戳格式(可选)。不设置则默认为会话级cookie,在浏览器关闭后cookie失效。<br>
path:服务器端有效路径(可选)。默认为当前设置cookie时页面的路径,'/'表示整个域名有效,'/A'表示A分类目录下的页面有效。只有设置的路径包含的页面才可以拿到cookie值<br>
domain:该cookie有效的域名(可选),只有指定的域名才可以拿到cookie,默认所有域名都可以拿到。 如,“www.php.com”,也可是“.php.com”。</p>
<ul>
<li>实例:<br>
setcookie('validCode','value',time()+3600*12,'/','www.test.com');</li>
</ul>
<p>cookie名称:validCode</p>
<p>cookie值:value</p>
<p>过期时间:12小时后过期</p>
<p>可以拿到cookie的页面:所有页面</p>
<p>可以拿到cookie的域名:www.test.com</p>
<h2 id="图文解析">图文解析:</h2>
<p>$cookieValue = 'value';<br>
$flag = setcookie('validCode', $cookieValue,time()+60,'/');</p>
<p>首次设置,响应头Set-Cookie已经有名为validCode的信息了,表示该cookie已存放在硬盘中该浏览器的cookie目录里了</p>
<p>请求头里面此时还没携带改Cookie,下次请求就会带上了。<br>
<img src="https://img2018.cnblogs.com/blog/1671865/201905/1671865-20190527195104390-1891915610.png"></p>
<p>设置完成后再请求页面就会携带cookie了:(如果限制了路径或域名,则只会在指定的页面才会携带cookie去请求)<br>
<img src="https://img2018.cnblogs.com/blog/1671865/201905/1671865-20190527195126151-2066667709.png"></p>
<h2 id="获取cookie">获取Cookie:</h2>
<p>$cookieValue ='';</p>
<p>if (isset($_COOKIE['validCode']))   //首先判断是否已设置了该cookie<br>
{<br>
$cookieValue = $_COOKIE['validCode'];<br>
}</p>
<h2 id="销毁cookie">销毁Cookie:</h2>
<p>可以通过设置cookie过期时间为以前的时间点来销毁:<br>
setcookie("user", "", time()-3600);</p>
<h2 id="cookie注意事项">Cookie注意事项:</h2>
<p>1、setcookie()之前不能有任何html输出,就是空格,空白行都不行。</p>
<p>2、setcookie()后,你在当前页调用echo $_COOKIE["name"]不会有输出。必须刷新或到下一个页面在过期之前才可以看到Cookie值。</p>
<p>3、由于cookie信息存储于用户的计算机中,那么就有可能伪造或修改Cookie从而造成Cookie 欺骗,一般可以对cookie的值进行加密来预防欺骗。读取Cookie的时候,对Cookie解密即可。</p>
<p>4、Cookie是保存在客户端的,用户禁用了Cookie,你的Cookie自然也就没作用啦!</p><br><br>
来源:https://www.cnblogs.com/caominjie/p/10932731.html
頁: [1]
查看完整版本: PHP中Cookie的使用