温馨提示: 这篇文章于2981天前编写,现在可能不再适用或落后.

COOKIE和SESSION是在浏览器中很重要的东西,用来记录登陆或者一些数据,同一域名下使用很简单,但是在二级域名下却无法直接共享,对于一些只用一个子域名的网站来说并没有什么卵用,但是对于一些分很多二级域名的网站来说是必须要会的,比如bilibili就分成了很多子站,首页,搜索,账户,直播,消息等等。

COOKIE消失的时间可以自行设置,而SESSION的消失时间则是浏览器关闭则消失。一般网站在登陆的时候都是COOKIE与SESSION同时使用来确保登录的。

接下来我来说明一下最简单的设置COOKIE与SESSION的方法,方法很简单。

cookie与session

<?php
//设置一个叫做mySession的session
$_SESSION['mySession'] = "设置一个session";
//设置一个叫做myCookie的cookie,时间1小时
setcookie("myCookie","设置一个cookie",time()+3600);
?>
```设置最基础的cookie与session非常简单,共享给二级域名的cookie与session其实也不是很难。

  

都知道setcookie函数提供了一个路径和域名因此只需要添加这两个就可以了

我在两个不同的二级域名下

set.localhost.com下创建set.php

get.localhost.com下创建get.php   

共享cookie

  
<?php //set.php文件中写下如下代码 //path参数填写 / 是站点根目录都生效 //domain参数填写 localhost.com 是主域名(一定要是主域名) setcookie("myCookie","设置一个cookie",time()+3600,"/","localhost.com"); ?> <?php //get.php文件中写下如下代码 //输出COOKIE则会发现另外一个二级域名访问设置的cookie已经在整个主域名及二级等生效 echo $_COOKIE['myCookie']; ?>

  

  
<?php //set.php文件中写下如下代码 //开启session session_start(); //设置session $_SESSION['mySession'] = "设置一个session"; //用cookie把当前域名下的session放到cookie中去 setcookie("liveSession",session_id(),time()+604800,"/","localhost.com"); ?> <?php //get.php文件中写下如下代码 //获取储存在cookie里面的liveSEssion session_id($_COOKIE['liveSession']); //开启session session_start(); //获取在b.php文件中设置的mySession echo $_SESSION['mySession']; ?>

  

关于本地设置二级域名的话,可以去 C:WindowsSystem32driversetc下用管理员权限打开记事本的打开hosts添加一下代码

  

127.0.0.1 www.localhost.com 127.0.0.1 search.localhost.com 127.0.0.1 account.localhost.com ..........

``` 记住一定要是管理员权限!!

下载地址:

【七空幻音】PHP下设置跨域COOKIE与SESSION.zip

    阁下需要登录后才可以查看评论哦~

    随便看看

      载入中...

      正在准备穿越次元,阁下请稍等片刻~