今天在开发网站的时候需要用到php cookie,结果一直无法设置也无法取值或者只有当前页面才能取到cookie的值,真是让人百思不得其解,后来查找了一些资料,才知道伪静态下,php setcookie 在rewrite的情况下只对当前目录有效,于是我们得在setcookie的第四个参数中加入“/”就可以解决问题了。
<?php
//$value是cookie变量
setcookie("mayixueyuan",$value,time()+3600*24*30,'/');
?>
顺便做了个检测效果的简单代码,代码如下:
setcookie.php
<?php
/*
蚂蚁学院 伪静态下的 Cookie赋值与取值
作者:陈树熊
网址:http://www.mayixueyuan.com
*/
setcookie("mayixueyuan","蚂蚁学院",time()+3600,'/');
?>
getcookie.php
<?php
/*
蚂蚁学院 伪静态下的 Cookie赋值与取值
作者:陈树熊
网址:http://www.mayixueyuan.com
*/
echo $_COOKIE['mayixueyuan'];
?>
.htaccess 伪静态文件
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^setcookie.html$ mayixueyuan/setcookie.php
RewriteRule ^getcookie.html$ mayixueyuan/getcookie.php
</IfModule>
请配置好运行环境之后,访问
http://域名/setcookie.html 进行cookie赋值
http://域名/getcookie.html 进行cookie取值
PS:可以先访问 http://域名/getcookie.html,证明cookie是没有值,
再访问 http://域名/setcookie.html 进行赋值,
然后刷新 http://域名/getcookie.html,可以看到取值成功。
10蚂蚁积分下载
真正有智慧的人,会在认清自己的前提下,充分接纳自己。他们既不妄自菲薄,也不骄傲自满,而是客观地评价自己,扬长避短,选择适合自己的道路持续深耕。当你敢于直面自己时,你已经成功了一半。
0
本文标签: