<?php
echo 'test';
就这样一个简单的php文件,我们来查看cookie的变化。
打开浏览器调试工具后,先清除之前的cookie,然后反复刷新页面,发现都没有新的cookie。
我们把test.php
代码修改如下:
<?php
session_start();
再去浏览器调试工具里查看有没有cookie?
可以看到,现在就有了(反复刷新浏览器,value值也不变化)。
思考: 我们没有在代码中做任何cookie的操作,为什么会生成cookie呢?
我们再修改test.php的代码如下:
<?php
//session_start();
if (!isset($_COOKIE['CLIENT_ID'])){ //如果没有就设置
setcookie('CLIENT_ID',uniqid());
}
通过浏览器调试工具,我们发现这样实现了和session_start()
类似的功能。
其实session的原理,就是利用cookie在把信息保存在了本地(windows系统的temp目录中),做到了同一个域内共享。
如果禁用了cookie,那么session也用不了。